11_set.html 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <script src="./js/vue.js"></script>
  8. </head>
  9. <body>
  10. <div id="app">
  11. <!-- <h1 v-for="item in arr">{{item}}</h1>
  12. <h1>{{num}}</h1> -->
  13. <h1>用户名:{{obj.username}}</h1>
  14. <h1>年龄:{{obj.age}}</h1>
  15. <h1>性别:{{obj.sex}}</h1>
  16. <button @click="changeArr"> change </button>
  17. </div>
  18. <script>
  19. let app = new Vue({
  20. el: '#app',
  21. data:{
  22. arr:["a","b","c","d","e"],
  23. num:0,
  24. obj:{
  25. username:"zhangsan",
  26. age:18
  27. }
  28. },
  29. methods: {
  30. changeArr:function(){
  31. // this.arr[0] = "hello";
  32. // this.arr = [1,2,3,4,5]
  33. // this.num++;
  34. // 在vue中修改数组具体某一个值的时候 以及向对象中新增属性的时候 不能直接修改 要用Vue.set方法
  35. // Vue set 方法 接受三个参数 第一个要求修改的对象或数组 第二个是修改的属性或索引 第三个是修改的值
  36. // Vue.set(this.arr,0,"hello");
  37. // this.obj.sex = "男";
  38. Vue.set(this.obj,"sex","男");
  39. }
  40. },
  41. })
  42. </script>
  43. </body>
  44. </html>