当前位置:  开发笔记 > 前端 > 正文

v-for中的计算/动态v模型名称

如何解决《v-for中的计算/动态v模型名称》经验,为你挑选了1个好方法。

我有一个通过v-for生成的表单.

注意:我正在使用"@"来逃避刀片.

我的vue isstance有:

data: {
    form: {
        inputs: [{icon: "",  name="",  placeholder: "", type="",  value=""}]
    },
    owner: {first_name: "", last_name: "", cell_phone: "", email: ""}
}

我生成表格:


我想将每个输入绑定到各自的承包商属性.所以我希望v-models值为owner.first_name,owner.last_name,owner.cell_phone和owner.电子邮件.我希望我能做到:

 v-model="'owner' + @{{input.name}}"

但我得到:

[Vue warn]: v-model="'owner' + {{input.name}}": attribute interpolation is not allowed in Vue.js directives and special attributes.
vue.js:1956 Error: Warning Stack Trace
    at warn (vue.js:1956)
    at Directive.bind (vue.js:4507)
    at Directive._bind (vue.js:8668)
    at linkAndCapture (vue.js:7367)
    at compositeLinkFn (vue.js:7345)
    at new Fragment (vue.js:5373)
    at FragmentFactory.create (vue.js:5575)
    at Directive.create (vue.js:5844)
    at Directive.diff (vue.js:5757)
    at Directive.update (vue.js:5692)

所有者属性对应于每个输入的input.name.

谢谢

应用程序说明:我正在尝试使用多个表单来构建所有者.每个表单都是通过ajax请求生成的,该请求获取一个表单对象,该表单对象包含输入n和该表单的操作.



1> Pantelis Pes..:

你可以试试这个:

v-model="owner[input.name]"

推荐阅读
云聪京初瑞子_617
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有