vue對對象、數組的增、刪、改、查

<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>vue修改數組元素方法</title> </head> <body> <div id="root"> <div v-for="item in arr"> {{ item }} </div> <button @click="changeArr1">修改數組元素方法--方法一</button> <button @click="changeArr2">修改數組元素方法--方法二</button> <button @click="changeArr3">修改數組元素方法--方法三</button> <button @click="getTheArr">獲取數組元素</button> <button @click="getTheNewArr">獲取新數組元素</button> <button @click="addUserObj">增加/修改對象元素</button> <button @click="delUserObj">刪除對象元素</button> <button @click="updateUserObj">修改/增加對象元素</button> <button @click="printUserObj">打印對象元素</button> <button @click="addUserArr">增加數組元素</button> <button @click="delUserArr">刪除數組元素</button> <br>//遍歷數組: <div v-for="(v, k, index) in user"> <p> uid: {{k}}, avatar: {{v.avatar}}, nick: {{v.nick}} </p> </div> <div v-for="item in user"> {{item.nick}}——{{item.avatar}} </div> 點一次顯示一個頭像 <div></div>> </div> <script src="./vue.js"></script> <script type="text/javascript"> var vm = new Vue({ el: '#root', data: { arr: [1, 2, 3], user: { "1": { "avatar": "xxx.xx/1.png", "nick": "你爹" }, "2": { "avatar": "xxx.xx/2.png", "nick": "你爺" }, } }, methods: { changeArr1: function() { Vue.set(vm.arr, 0, '方法一'); }, changeArr2: function() { vm.$set(vm.arr, 0, '方法二'); }, changeArr3: function() { this.arr.splice(0, 1, '方法三'); //vm.arr.splice(0,1,'方法三'); }, //獲取元素 getTheArr: function() { console.log(this.arr[0]); }, //獲取元素 getTheNewArr: function() { console.log(this.user["1"]["avatar"]); }, //給對象增加元素 addUserObj: function() { console.log(this.user) Vue.set(this.user, "3", {"avatar":"xxx.xx/3.png","nick":"阿三"}) console.log(this.user); console.log(this.user["3"]["avatar"]); }, //刪除對象元素 delUserObj: function() { //console.log(this.user["1"]["avatar"]) console.log(this.user); Vue.delete(this.user, "1"); console.log(this.user); }, updateUserObj: function() { Vue.set(this.user, "3", {"avatar":"yyy.yy/3.jpg","nick":"三哥"}) }, //給數組添加元素 addUserArr: function() { this.arr.push("嘿嘿嘿"); console.log(this.arr); }, //刪除數組中元素 delUserArr: function() { arrLen = this.arr.length; Vue.delete(this.arr, arrLen - 1); console.log(this.arr); }, //在js中遍歷vue的data中的內容 printUserObj: function() { for (let key in this.user) { console.log(key, this.user[key]["nick"], this.user[key]["avatar"]); } } } }); </script> </body> </html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章