触发视图更新-vue

本文介绍Vue.js中如何使用特定方法更新数组并触发视图更新,包括push、pop、shift、unshift、splice、sort和reverse等操作。通过实例展示了不同方法对数组的影响及视图响应的变化。
摘要由CSDN通过智能技术生成

触发更新

Vue对一些方法进行了包装和变异,以后数组通过这些方法进行数组更新,会触发视图对的更新。

  1. push :再数据的最后添加一个数据
  2. pop :删除最后一个数据
  3. shift:删除数据的第一个元素
  4. unshift(item):再数组的开头位置添加一个元素
  5. splice(inddex,howmany,item1,…itemX):向数组中添加或删除或替换元素
  6. sort:排序
  7. reverse: 反转
 <div id="app">        
 	 <!-- <div v-for="book in books" v-bind:key="book">            
 	 	<label>{{book}}</label>            
 	 	<input type="text" v-bind:placeholder="book">        
	 	</div>       
	        <button @click="changeBooks">更换图书</button> -->        
	        <div v-for="book in books">            
	        	<label>{{book}}</label>        
	        </div>       
	        <button @click="updatelist">更新视图</button>   
</div>
<script>    
	new Vue({        
		el: "#app",        
		data: {            
			books: ['Python','Java','PHP','C++'],           
			 // person: {            
			 //     username: "happy"           
			  // }       
			   },               
                 methods: {            
                 	changeBooks:function(){                this.books.sort(function (a,b){
                 	          // 整数 true    负数 false                    
                 	          return 5- Math.random()*10                
                 	          })            
                 	          },            
                 	          updatelist: function(){                
                 	          // 直接赋值                
                 	          // this.books = ["春花秋月"]                
                 	         // this.person.username = ""               
                 	         // push方法                
                 	         // this.books.push("梧桐灯")                
				 // 删除最后一个数据               
				  //this.books.pop()                
				  //删除第一个元素                
				  // this.books.shift()                
				  // 向books第0个位置添加元素                
				  // this.books.splice(0,0,"深海")                
				  // 下标从0开始,删除2个元素                
				  // this.books.splice(0,2)                
				  //下标从0开始,替换2个元素               
				   // this.books.splice(0,2,'天空','大海')                
				   //sort 排序                
				   // this.books.sort(function (x,y){                
				   //     a = Math.rangdom()                
				   //     b=Math.random()                
				   //     return a-b                
				   // })                
				   // 反转                
				   this.books.reverse()                            
				   }        }
}</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值