zoukankan      html  css  js  c++  java
  • Vue中v-for的数据分组

    使用Vue.js可以很方便的实现数据的绑定和更新,有时需要对一个一维数组进行分组以方便显示,循环可以直接使用v-for,那分组呢?这里需要用到vue的computed特性,将数据动态计算分组。代码如下

    <!DOCTYPE html>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <meta charset="utf-8" />
        <script src="Scripts/vue.js"></script>
    </head>
    <body>
        <!--这是我们的View-->
        <div id="app">
            <table>
                <tbody>
                    <tr v-for="(row,i) in listTemp">
                        <td v-for="(cell,j) in row">
                            <div :id="'T_'+(i*3+j)">Data-{{cell}}</div>
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    </body>
    </html>
    <script src="Scripts/vue.js"></script>
    <script>
        // 创建一个 Vue 实例或 "ViewModel"
        // 它连接 View 与 Model
        new Vue({
            el: '#app',
            data: {
                list: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
            },
            computed: {
                listTemp: function () {
                    var list = this.list;
                    var arrTemp = [];
                    var index = 0;
                    var sectionCount = 3;
                    for (var i = 0; i < list.length; i++) {
                        index = parseInt(i / sectionCount);
                        if (arrTemp.length <= index) {
                            arrTemp.push([]);
                        }
                        arrTemp[index].push(list[i]);
                    }
                    return arrTemp;
                }
            },
        })
    </script>
    
    在computed中以3个元素为一组来动态分组,在绑定数据的地方使用嵌套的v-for循环,结果如下图(3列4行)


    这里还对包裹数据的每个div的id作了特别的处理,动态产生id,每个id都有一个字符串前缀T,后面是数据的索引,索引采用i*3+j计算获得,以便于对应到原始的数据list。


    转载请注明出处

  • 相关阅读:
    HD2058The sum problem
    采用循环链表结构求解约瑟夫问题
    java线性表学习笔记(二)
    java线性表学习笔记(一)
    HD1004Let the Balloon Rise
    HD1005Number Sequence
    用c++库函数轻松解决回文问题
    accelerated C++ 中查找url(学习笔记)
    C++ 之关联容器 map
    pytorch 迁移学习[摘自官网]
  • 原文地址:https://www.cnblogs.com/sparkleDai/p/7604905.html
Copyright © 2011-2022 走看看