可以用 v-for 指令基于一个数组来渲染一个列表。v-for 指令需要使用 item in items 形式的特殊语法,其中 items 是源数据数组,而 item 则是被迭代的数组元素的别名

    当 Vue 正在更新使用 v-for 渲染的元素列表时,它默认使用“就地更新”的策略。如果数据项的顺序被改变,Vue 将不会移动 DOM 元素来匹配数据项的顺序,而是就地更新每个元素,并且确保它们在每个索引位置正确渲染。

    这个默认的模式是高效的,但是只适用于不依赖子组件状态或临时 DOM 状态 (例如:表单输入值) 的列表渲染输出

    为了给 Vue 一个提示,以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一 key 属性:

    1. <div id="app">
    2. <ul>
    3. <li v-for="item,index in items" :key="index">
    4. {{index}}{{ item.message }}
    5. </li>
    6. </ul>
    7. <ul>
    8. <li v-for="value, key in object">
    9. {{key}} : {{ value }}
    10. </li>
    11. </ul>
    12. </div>
    13. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    14. <script type="text/javascript">
    15. var vm = new Vue({
    16. el : "#app",
    17. data : {
    18. items : [
    19. { message: 'Foo' },
    20. { message: 'Bar' }
    21. ],
    22. object: {
    23. title: 'How to do lists in Vue',
    24. author: 'Jane Doe',
    25. publishedAt: '2016-04-10'
    26. }
    27. }
    28. });
    29. </script>