18_vue中的set方法.html 1.2 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. </head>
  8. <body>
  9. <div id="app">
  10. <ul>
  11. <li v-for="(item,key) in obj">
  12. {{key}}:{{item}}
  13. </li>
  14. </ul>
  15. <button @click="addFun">添加</button>
  16. </div>
  17. <script src="./js/vue.js"></script>
  18. <script>
  19. new Vue({
  20. el: '#app',
  21. data: {
  22. obj: {
  23. name: "张三",
  24. age: 18,
  25. sex: "男"
  26. }
  27. },
  28. methods:{
  29. addFun(){
  30. // 向obj中添加一个属性vue无法检测到
  31. console.log("click");
  32. // this.obj.name = "李四";
  33. // 向obj中添加一个属性
  34. // this.obj.school = "清华大学";
  35. // 解决方法:使用vue提供的set方法
  36. // Vue.set(要修改对象,属性名,属性值)
  37. Vue.set(this.obj,"school","清华大学");
  38. }
  39. }
  40. })
  41. </script>
  42. </body>
  43. </html>