加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
16-watch监听数组.html 1.35 KB
一键复制 编辑 原始数据 按行查看 历史
awjf 提交于 2021-05-06 18:26 . 0506
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="./js/vue.js"></script>
</head>
<body>
<div id="app">
<ul>
<li v-for="(ele,i) in arr">{{ele}}</li>
</ul>
<button v-on:click="fn">点击,修改数组的第二个元素值为100</button>
</div>
</body>
<script>
new Vue({
el: "#app",
data: {
arr: [10, 40, 13, 26]
},
methods: {
//可以被监听到的,操作数组的方法:splice,pop,push,shift,unshift,reverse....
fn() {
// this.arr[1] = 100 //vue监听不到使用 【索引值】的方式修改数组元素,可以使用splice方法
this.arr.splice(1, 1, 100)
// this.arr.length = 10 //vue监听不到用length属性修改数组长度
console.log(this.arr);
},
},
watch: {
arr: {
deep: true, //只能解决修改对象属性值得问题
handler(newValue, oldValue) {
console.log("arr变化了!!!");
}
}
},
computed: {
}
})
</script>
</html>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化