首页 > 其他 > 详细

vue基础知识之checkbox使用 v-model区别

时间:2019-06-27 22:52:02      阅读:540      评论:0      收藏:0      [点我收藏+]

  首先简单说一下v-bind与v-model的区别:v-bind是单向的,数据驱动视图;v-model是双向绑定的 数据与视图相互影响。

  下面介绍checkbox中v-model的使用,大体有两种情况,

   一、v-model对应的data属性是数组时,返回的是checkbox的value值

  二、v-model对应的data属性是Boolean时,返回的是checkbox的checked的boolean值

下面是代码举例,直接运行即可,当然代码后半段额外加上了app开发框架vant中的checkbox的情况,那个可以自己研究了。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 
 4 <head>
 5     <meta charset="UTF-8">
 6     <meta name="viewport" content="width=device-width,initial-scale=1.0,
 7         minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
 8     <meta http-equiv="X-UA-Compatible" content="ie=edge">
 9     <title>Document</title>
10 
11     <!-- 引入样式 -->
12     <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/vant@2.0/lib/index.css">
13 
14     <!-- 引入组件 -->
15     <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js"></script>
16     <script src="https://cdn.jsdelivr.net/npm/vant@2.0/lib/vant.min.js"></script>
17 </head>
18 
19 <body>
20     <div id="app">
21 
22         <h4 style="color:red;">radio--v-model的使用,只有一种请空,都返回value值,本次不举例</h4>
23         <h1>checkbox--v-model的使用,两种情况</h1>
24         <h3>1,v-model对应的是数组时,返回的是checkbox的value值</h3>
25         <p style="color:red;font-size:14px">checkbox是通过value值区分的,如果value值相同,选中其中一个,另一个也被选中</p>
26         <input type="checkbox" v-model="testarr" value="测试多选1-value">测试多选1
27         <input type="checkbox" v-model="testarr" value="测试多选2-value">测试多选2
28         <input type="checkbox" v-model="testarr" value="测试多选3-value">测试多选3
29         <p>v-model的值是:{{testarr}}</p>
30         <h3>1,v-model对应的是Boolean时,返回的是checkbox的checked的boolean值</h3>
31         <p style="color:red;font-size:14px">checkbox是通过value值区分的,如果value值相同,选中其中一个,另一个也被选中</p>
32         <input type="checkbox" v-model="testarr1" value="测试多选4-value">测试多选4
33         <input type="checkbox" v-model="testarr1" value="测试多选5-value">测试多选5
34         <input type="checkbox" v-model="testarr1" value="测试多选6-value">测试多选6
35         <p>v-model的值是:{{testarr1}}</p>
36 
37         <hr>
38         <h1>PS:测试vant的 checkbox</h1>
39         <h4>---单个checkbox</h4>
40         <van-checkbox shape="square" v-model="checked">复选框boolean类型model</van-checkbox>
41         <van-cell-group>
42             <van-field label="你选择的是:" v-model="checked" />
43         </van-cell-group>
44         <h4>---多个checkbox</h4>
45         <van-checkbox-group v-model="result">
46             <van-checkbox v-for="(item, index) in list" :key="item" :name="item">
47                 复选框 {{ item }}
48             </van-checkbox>
49         </van-checkbox-group>
50         <van-cell-group>
51             <van-field label="你选择的是:" v-model="result" />
52         </van-cell-group>
53     </div>
54 
55     <script>
56         //var vant = window.vant;
57 
58         var app = new Vue({
59             el: "#app",
60             data() {
61                 return {
62                     testarr: [],
63                     testarr1: true,
64                     /*--vant data test--*/
65                     checked: true,
66                     list: [a, b, c],
67                     result: [a, b]
68                 }
69             }
70         })
71 
72         // 注册组件
73         Vue.use(vant);
74 
75     </script>
76 </body>
77 
78 </html>

 

vue基础知识之checkbox使用 v-model区别

原文:https://www.cnblogs.com/lixianfu5005/p/11100061.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!