1.  vue属性、事件、内容绑定

 1 <div id="dv">
2 <!-- v-cloak能够解决表达式闪烁问题
3 (当网速较慢时,会先出现{{msg}},当请求完毕后才会将数据替换) -->
4 <p v-cloak>===={{msg}}====</p>
5 <p>========={{msg2}}========</p>
6 <h4 v-text="msg">============</h4>
7 <!--默认 v-text 没有闪烁问题-->
8 <!-- v-text会覆盖元素中原本内容,
9 而插件表达式不会覆盖,可在前后增加想要的元素 -->
10 <div v-text="msg3"></div>
11 <div>{{msg3}}</div>
12 <div v-html="msg3"></div>
13 <!-- v-html能够将数据当成HTML文本显示,会覆盖原有内容 -->
14 <!-- v-text与插件表达式只会讲数据当成普通文本显示 -->
15
16
17 <!-- v-bind:用于绑定属性的指令 -->
18 <input type="text" v-bind:value="mytitle">
19 <!-- v-bind可以简写成 : -->
20 <!-- v-bind原理是将被绑定的属性的值当成js代码执行,
21 所以可以在其中写合法的表达式-->
22 <input type="text" :value="mytitle+'123'" @click = "show">
23
24 <!-- v-on:事件绑定机制 -->
25 <!-- v-on:缩写@ -->
26 <input type="button" value="按钮" v-on:click = "show">
27 </div>
28
29
30 <script src="./lib/vue-2.4.0.js"></script>
31 <script>
32 var vm = new Vue({
33 el: '#dv',//el:代表被操作的元素
34 data:{//存储数据,这里面的数据名不是固定的
35 msg:'123',
36 msg2:'456',
37 msg3:'<h1>哈哈,你好Vue</h1>',
38 mytitle:'这是我自己定义的title'
39 },
40 methods:{//这个methods属性定义了当前Vue实例中所有可用的方法
41 show:function () {
42 alert("hello");
43 }
44 }
45 });
46 </script>

vue/事件、属性、内容绑定

2.  v-on的事件修饰符

vue/v-on的事件修饰符

 3.  v-model双向绑定

 1     <div id="dv">
2 <h4>{{msg}}</h4>
3 <input type="text" v-bind:value="msg">
4 <input type="text" v-model="msg">
5 <!-- v-bind只能实现数据的单向绑定 -->
6 <!-- v-model能够实现数据的双向绑定
7 注意:v-model只能运用在表单元素中-->
8 </div>
9 <script src="./lib/vue-2.4.0.js"></script>
10 <script>
11 var vm = new Vue({
12 el: '#dv',
13 data:{
14 msg:'123',
15 },
16 methods:{
17 }
18 });
19 </script>

vue/v-model双向绑定

4.  vue中的样式

 1 <!-- 注意:这里的class都需要使用 v-bind 进行数据绑定 -->
2 <div id="dv">
3 <!-- 第一种使用方式:直接传递一个数组 -->
4 <h2 v-bind:class="['red','thin']">hello world!</h2>
5 <!-- 第二种使用方法:可在数组中使用三元表达式 -->
6 <h2 v-bind:class="['red','thin',flag?'italic':'']">hello world!</h2>
7 <!-- 第三种使用方法:使用对象代替三元表达式,提高可读性 -->
8 <h2 v-bind:class="['red','thin',{'spacing':flag}]">hello world!</h2>
9 <!-- 第四种:使用对象代替数组 -->
10 <!--<h2 v-bind:class="{red:true,italic:true,spacing:true,thin:true}">hello world!</h2>-->
11 <h2 v-bind:class="obj">hello world!</h2>
12 </div>
13 <script src="./lib/vue-2.4.0.js"></script>
14 <script>
15 var vm = new Vue({
16 el: '#dv',
17 data:{
18 flag:true,
19 obj:{red:true,italic:true,spacing:true,thin:true}
20 },
21 method:{}
22 });
23 </script>
24
25
26
27 <div id="dv2">
28 <!-- 内联样式绑定: -->
29 <!-- 第一种:传入一个对象 -->
30 <h3 :style="{color:'red','font-weight':200}">内联样式绑定</h3>
31
32 <!-- 第二种:将对象提取出来 -->
33 <h3 :style="styleFlag">内联样式绑定</h3>
34
35 <!-- 第三种:通过数组同时传入多个对象 -->
36 <h3 :style="[styleFlag,styleFlag2]">内联样式绑定</h3>
37 </div>
38 <script>
39 var vm2= new Vue({
40 el:'#dv2',
41 data:{
42 styleFlag:{color:'red','font-weight':200},
43 styleFlag2:{color:'#000'}
44 }
45 });
46 </script>

vue中的样式

5.  v-for循环指令

 1     <div id="dv">
2 <!-- v-for遍历数组,item代表数组的每一项(与PHP类似),i代表每一项的索引 -->
3 <!--<p v-for="item in arr">{{item}}</p>-->
4 <p v-for="(item,i) in arr">项:{{item}}----索引:{{i}}</p>
5 <br>--------------------<br>
6
7 <!-- v-for遍历 对象数组,有i代表索引与上相同 -->
8 <p v-for="user in users">user.id:{{user.id}}----user.name:{{user.name}}</p>
9 <br>--------------------<br>
10 <!-- v-for遍历对象,出现形式为 键值对 的形式,
11 第一个参数为值,第二个参数为键,有第三个参数 i 为索引值 -->
12 <p v-for="(val,key) in obj">值:{{val}}----键:{{key}}</p>
13
14 <!-- v-for迭代数字 -->
15 <p v-for="num in 3"></p>
16 </div>
17
18 <script src="./lib/vue-2.4.0.js"></script>
19 <script>
20 var vm = new Vue({
21 el:'#dv',
22 data:{
23 arr:[1,2,3,4],
24 users:[
25 {id:1,name:'user1'},
26 {id:2,name:'user2'},
27 {id:3,name:'user3'},
28 {id:4,name:'user4'}
29 ],
30 obj:{
31 id:1,
32 name:'user',
33 sex:'男',
34 age:'22'
35 }
36 }
37 })
38 </script>

vue/v-for循环

6.  v-if、v-show判断

 1 <div id="dv">
2 <input type="button" value="toggle" @click="flag=!flag">
3 <!-- v-if会重复的创建与删除元素,v-show只是切换改变display:none样式 -->
4 <!-- v-if有较高的切换性能消耗,v-show有较高的初始渲染消耗 -->
5
6 <!-- 如果元素涉及到频繁的切换,最好不要使用 v-if -->
7 <!-- 如果元素可能永远也不会被显示出来,则不要使用v-show -->
8 <h3 v-if="flag">这是一个v-if控制的元素</h3>
9 <h3 v-show="flag">这是一个v-show控制的元素</h3>
10 </div>
11 <script src="./lib/vue-2.4.0.js"></script>
12 <script>
13 var vm = new Vue({
14 el:'#dv',
15 data:{
16 flag:false
17 }
18 });
19 </script>

vue/v-if、v-show

最新文章

  1. 模拟实现SQL Server中的datepart(week,date)的功能
  2. C/C++二维数组的用法
  3. 深入理解JQuery插件开发
  4. 浅谈TabLayout(ViewPager+Tab联动)
  5. SQL Server中的事务日志管理(3/9):事务日志,备份与恢复
  6. Android Studio学习笔记
  7. 1400 - &quot;Ray, Pass me the dishes!&quot;
  8. 安装mvc3出错致命错误
  9. Java增强的泛型
  10. AngularJS &lt;a&gt; 超链接标签不起作用?
  11. GO 语言简介(网摘)
  12. 股票K线图
  13. Oracle 《积累章》 根据身份证号码更新当前出生日期
  14. element-UI表单验证
  15. Spring Boot笔记五: Web开发之Webjar和静态资源映射规则
  16. blockchain[z]
  17. java随机排座位
  18. javaweb+spring 项目集成异常的处理
  19. 解决ORA-21561: OID generation failed
  20. bzoj千题计划146:bzoj3295: [Cqoi2011]动态逆序对

热门文章

  1. NOIP2018 解题报告
  2. 使用Zolom内存解析运行python脚本(不落地)
  3. Map接口中的常用方法-Map集合遍历建找值方式
  4. thinkphp无法访问man.php/index/login
  5. centos7连接WIFI
  6. ClickHouse(12)ClickHouse合并树MergeTree家族表引擎之AggregatingMergeTree详细解析
  7. NodeJS 实战系列:DevOps 尚未解决的问题
  8. Vue19 常用指令及自定义指令
  9. P6_认识小程序页面
  10. C# System.Threading.Timer 详解及示例