使用Vue.js将绑定方法结果导入v-model

gre*_*r69 12 vue.js

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

例如:

<someTag v-model="method_name(data_attribute)"></someTag>
Run Code Online (Sandbox Code Playgroud)

我出于某种原因无法使其发挥作用.

谢谢.

gre*_*r69 32

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

  • 有了几年的经验,您可能会学会添加代码块来显示您正在谈论的内容 (25认同)
  • 总是喜欢看到人们回来为自己的问题提供有价值的答案,非常有帮助! (5认同)

Jef*_*eff 21

v-model表达式必须具有getset函数.对于大多数变量,这非常简单,但您也可以使用计算属性来自己定义它们:

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;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

然后你可以使用 <input v-model="doubleValue"></input>

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