Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js VueJS动态v模型值_Vue.js - Fatal编程技术网

Vue.js VueJS动态v模型值

Vue.js VueJS动态v模型值,vue.js,Vue.js,我想将v-model设置为由我的v-for循环中的值决定的值。 这是我的密码: <tr v-for="campaign in _campaigns"> <el-switch v-model="campaign.enabled"></el-switch> </tr> 现在,如果campaign.enabled===“active”我想将v-model设置为on,或者如果campaign.enabled===“inactive”设置为of

我想将
v-model
设置为由我的
v-for
循环中的值决定的值。 这是我的密码:

<tr v-for="campaign in _campaigns">
    <el-switch v-model="campaign.enabled"></el-switch>
</tr>

现在,如果
campaign.enabled===“active”
我想将v-model设置为on,或者如果
campaign.enabled===“inactive”
设置为off

我尝试通过以下几种方式向v模型添加逻辑:
v-model=“campaign.enabled===“active”?开:关“
或使用一种方法,但不起作用。有什么想法可以作为最好的实践来实现?

< P>试试这个:

<tr v-for="campaign in _campaigns">
    <el-switch v-model="campaign.enabled === 'active'"></el-switch>
</tr>

docs说您必须为v模型提供一个布尔值:

指令
v-model
仅限于输入类型

  • 和vue组件

因此bool值将适用于
type=“checkbox”
您无法设置

将v-model设置为on

只能将输入设置为选中或未选中。如果要禁用或隐藏组件,请使用
v-If
v-show


您正试图在组件上使用v-model,因此您应该阅读此或。在大多数情况下,我认为在组件中使用道具是更好的解决方案。因为v-model是标准的双向绑定指令。

v-model
需要能够为其参数赋值以及读取其值。它希望接收和分配的值是布尔值。由于要将这些转换为字符串,您需要有编码和转换值的方法,并且需要将
v-model
分离为其组件
value
on:input
绑定

newvue({
el:“#应用程序”,
数据:{
活动:[{
已启用:“活动”
}]
},
方法:{
运动(c){
返回c.enabled==='active';
},
选举活动(b){
返回b?'active':'inactive';
}
}
});

{{campaign.enabled}}

el开关是这个组件吗?这会产生一个错误
模块构建失败:SyntaxError:分配给右值
您可以发布您的整个代码,还是创建一个提琴吗?
v-model
是双向绑定,这意味着它将在翻转开关时尝试分配给它。