11.列表循环渲染.html 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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. <!-- v-for="(item,index) in xxx" :key="index"
  11. 如果循环中没有绑定key
  12. 1.列表再删除或者排序时 dom操作错乱
  13. 2.复选框中状态容易错位
  14. 3.组件状态更新不及时
  15. 4.性能变差
  16. -->
  17. <h1>{{msg}}</h1>
  18. <div v-for="(item,index) in list" :key="index">{{item.name}}--{{index}}</div>
  19. <br><br>
  20. <div v-for="(item,index) in num" :key="index">{{item}}--{{index}}</div>
  21. <br><br>
  22. <div v-for="(item,index) in str" :key="index">{{item}}--{{index}}</div>
  23. <br><br>
  24. <div v-for="(item,index) in obj" :key="index">{{item}}--{{index}}</div>
  25. </div>
  26. <script src="./vue.js"></script>
  27. <script>
  28. var app = new Vue({
  29. el: "#app",
  30. data: {
  31. msg: "你好啊",
  32. num: 10,
  33. str: "hello",
  34. obj: {
  35. name: '图图',
  36. age: 3
  37. },
  38. list: [
  39. {
  40. name: '图图',
  41. age: 3
  42. }, {
  43. name: 'Lucy',
  44. age: 13
  45. }, {
  46. name: 'Tom',
  47. age: 23
  48. }
  49. ]
  50. }
  51. })
  52. </script>
  53. </body>
  54. </html>