Vue列表渲染-变异方法


Vue 包含一组观察数组的变异方法,变异方法 (mutation method),顾名思义,会改变被这些方法调用的原始数组

所以它们也将会触发视图更新。这些方法如下:

  • push()
  • pop()
  • shift()
  • unshift()
  • splice()
  • sort()
  • reverse()

你打开控制台,然后用前面例子的 items 数组调用变异方法:example1.items.push({ message: 'Baz' }) 。


这些方法是不是很熟悉,这些都是原生js数组的方法,会专门写篇博客回顾这些方法这里就看实例吧

 1 <div id="example">
 2   <div>
 3     <button @click="push()">push</button>
 4     <button @click="pop()">pop</button>
 5     <button @click="shift()">shift</button>
 6     <button @click="unshift()">unshift</button>
 7     <button @click="splice()">splice</button>
 8     <button @click="sort()">sort</button>
 9     <button @click="reverse()">reverse</button>
10   </div>
11   <ul>
12     <li v-for="item in items">
13       {{item.message}}
14     </li>
15   
16   </ul>
17 </div>
18 <script>
19   var example = new Vue({
20     el:"#example",
21     data:{
22       
23       items:[
24          {message:5},
25          {message:2},
26          {message:7}
27       ],
28       addValue:{message:5},
29       addSplice:{message:'Thank'},
30     },
31      methods:{
32         push(){
33           this.items.push(this.addValue) //末尾添加
34         },
35         pop(){
36           this.items.pop() // 末尾删除
37         },
38         shift(){
39           this.items.shift()   // 开头删除
40         },
41         unshift(){
42           this.items.unshift(this.addValue) //开头添加
43         },
44         splice(){
45           this.items.splice(1,0,this.addSplice); // 从第二个位置添加一个Thank
46         },
47         sort(){
48           this.items.sort(function(a, b){
49              return a.message < b.message;    // 比较大小
50           });
51         },
52         reverse(){
53           this.items.reverse()         // 反转数组
54         },
55       
56       }
57   
58   })
59 </script>  

 

变异方法

push() 接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度

pop() 从数组末尾移除最后一项,减少数组的length值,然后返回移除的项

shift() 移除数组中的第一个项并返回该项,同时数组的长度减1

unshift() 在数组前端添加任意个项并返回新数组长度

splice() 删除原数组的一部分成员,并可以在被删除的位置添加入新的数组成员

sort() 调用每个数组项的toString()方法,然后比较得到的字符串排序,返回经过排序之后的数组

reverse() 用于反转数组的顺序,返回经过排序之后的数组

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM