vue 那些陣列方法是響應式的

2020-08-09 12:21:00

響應式的陣列方法

能改變陣列的陣列方法

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

沒有響應式的陣列方法

// 通過索引值修改陣列中的數據
this.arr[0] = 'k'
// 實現方法                 
this.arr.splice(0,1,'k') 
// set(要修改發物件,索引,修改的值)
Vue.set(this.arr,0,'k')

範例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../vue2.0.js"></script>
</head>
<body>
    <div id="app">
        <div v-for="(item,i) in arr" :key="i">{{item}}</div>
        <button @click="btnclick">按鈕</button>
    </div>
    <script>
        const vm = new Vue({
            el:"#app",
            data:{
                arr:['a','b','c']
            },
            methods:{
                btnclick(){
                    // push
                    // this.arr.push('d') // 可修改

                    // splice
                    // this.arr.splice(2,0,'d')// 可修改

                    // 通過索引值修改陣列中的數據
                    // this.arr[0] = 'k'  // 不可修改
                    // 實現方法
                    
                    // this.arr.splice(0,1,'k') 
                    // set(要修改發物件,索引,修改的值)
                    // Vue.set(this.arr,0,'k')
                }
            }
        })
    </script>
</body>
</html>