<..."> <..."/> <..."> <...">

使用Vue.js将方法结果绑定到v模型

vue.js Vue.js

小卤蛋

2020-03-30

如何使用Vue.js将方法结果绑定到v模型?

例如:

<someTag v-model="method_name(data_attribute)"></someTag>

由于某种原因,我无法使其正常运行。

谢谢。

第3863篇《使用Vue.js将方法结果绑定到v模型》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

2个回答
小小 2020.03.30

v-model表达式必须具有getand set函数。对于大多数变量来说,这很简单,但是您也可以使用计算属性自行定义它们,如下所示:

data:function(){
    return { value: 5 }
},
computed: {
    doubleValue: {
        get(){
            //this function will determine what is displayed in the input
            return this.value*2;
        },
        set(newVal){
            //this function will run whenever the input changes
            this.value = newVal/2;
        }
    }
}

那你可以用 <input v-model="doubleValue"></input>

如果只希望标签显示方法结果,请使用 <tag>{{method_name(data_attribute)}}</tag>

番长 2020.03.30

多年后,随着更多的经验,我发现绑定起来:value比使用v模型更容易然后,您可以通过捕获来处理更新@change

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android