Computed/Dynamic v-model 里面的名字 v-for
Computed/Dynamic v-model name inside v-for
我有一个通过 v-for.
生成的表格
注意:我使用“@”转义 blade。
我的 vue 实例有:
data: {
form: {
inputs: [{icon: "", name="", placeholder: "", type="", value=""}]
},
owner: {first_name: "", last_name: "", cell_phone: "", email: ""}
}
我生成的表格是:
<template v-for="input in form.inputs">
<div style="margin-bottom: 25px" class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-@{{input.icon}}"></i></span>
<input id="login-@{{input.name}}" v-model="?????" type="@{{input.type}}" class="form-control" name="@{{input.name}}" placeholder="@{{input.placeholder}}">
</div>
</template>
我想将每个输入绑定到各自的承包商 属性。所以我希望 v-models 值是 owner.first_name、owner.last_name、owner.cell_phone 和所有者。电子邮件。我希望我能做到:
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 请求生成的,该请求获取一个表单 object,其中包含输入 n 和该表单的操作。
你可以试试这个:
v-model="owner[input.name]"
我有一个通过 v-for.
生成的表格注意:我使用“@”转义 blade。
我的 vue 实例有:
data: {
form: {
inputs: [{icon: "", name="", placeholder: "", type="", value=""}]
},
owner: {first_name: "", last_name: "", cell_phone: "", email: ""}
}
我生成的表格是:
<template v-for="input in form.inputs">
<div style="margin-bottom: 25px" class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-@{{input.icon}}"></i></span>
<input id="login-@{{input.name}}" v-model="?????" type="@{{input.type}}" class="form-control" name="@{{input.name}}" placeholder="@{{input.placeholder}}">
</div>
</template>
我想将每个输入绑定到各自的承包商 属性。所以我希望 v-models 值是 owner.first_name、owner.last_name、owner.cell_phone 和所有者。电子邮件。我希望我能做到:
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 请求生成的,该请求获取一个表单 object,其中包含输入 n 和该表单的操作。
你可以试试这个:
v-model="owner[input.name]"