doT模板作为一个前端渲染模板,有着非常显著的有点。1、轻量。2、快捷。3、无依赖。

本文介绍一种几乎所有模板都会遇到的问题,双重循环渲染。我们知道在dot模板中循环渲染用的是{{~ it:value:index}} --- {{~}}的方式。但是这种方式配到一下数据类型

会变得无从下手。

let a=[{
        day:'2019-09-10',
        dayCon:[ {
        time:'15:15',
        newsCon:'8月29日晚间,中国石油披露2019年半年报,公司报告期共实现营业收入11962.59亿元,同比增长6.8%;归母净利润284.23亿元,同比增长3.6%;基本每股收益0.155元,比上年同期增加0.005元。公司拟中期每股派息0.06988元,并增加特别股息每股0.00777元,合计每股派息0.07765元,总派息额142.12亿元。'
    }, {
        time:'15:09',
        newsCon:'据披露,今年上半年中国石油原油销售量达6539.5万吨,对比上年同期的5123.1万吨增长27.6%,同时天然气销售量达125.27万吨,对比上年同期的101.4万吨同比增长23.5%,此外公司汽油、柴油、煤油、重油、润滑油等销售量也均实现了小幅下滑。'
    }, {
        time:'15:02',
        newsCon:'国家发改委数据显示,2019年上半年,原油加工量29335万吨,同比下降0.2%;成品油产量18425万吨,同比增长0.5%;成品油消费量15943万吨,比上年同期增长0.9%,其中汽油增长5.3%,柴油下降3.9%。'
    }]
},
{
        day:'2019-09-08',
        dayCon:[ {
        time:'12:04',
        newsCon:'8月27日晚间,中国有色金属龙头中国铝业股份有限公司(下称“中国铝业”,02600.HK)发布了2019年半年度报告。上半年,中国铝业实现营业收入949.40亿元,和上年同期相比(同比)增长15.23%;归属于上市股东的净利润为7.06亿元,同比减少14.10%;基本每股收益0.035元/股,同比减少23.43%。'
    }, {
        time:'13:12',
        newsCon:'2019年上半年,国内氧化铝现货最高价为3139元/吨,最低价为2657元/吨,平均价格2863元/吨,较去年同期略为下降0.9%。据统计,2019年上半年,全球氧化铝产量约为6279万吨,消费量约为6286万吨,同比均增长1.8%;中国氧化铝产量约为3603万吨,同比增长2.3%,消费量约为3587万吨,同比增长0.7%。'
    }, {
        time:'11:12',
        newsCon:'2019年上半年,SHFE(上海期货交易所)现货和三个月期货的平均价分别为13777元/吨和13786元/吨,较去年同期分别下跌4.3%和5.5%。据统计,2019年上半年,全球原铝产量约为3175万吨,消费量约为3301万吨,同比分别增长0.1%和0.5%;中国原铝产量约为1786万吨,同比减少0.8%,消费量约为1806万吨,同比增长0.8%。'
    }]
},
{
        day:'2019-08-18',
        dayCon:[ {
        time:'08:15',
        newsCon:'[分红方案披露的当天,英力特收盘价为10.85元。据此计算,英力特的股息率高达11%以上。此前的2017年,中国神华、江铃汽车两家公司,分别进行了2.97元/股、2.317元/股现金分红。相对于披露前的股价,中国神华的股息率超过16%,江铃汽车A、B股的股息率则达14.2%、21.3%]'
    }, {
        time:'09:15',
        newsCon:'过去十多年中,英力特虽然多次现金分红,但金额都相对较低。此次分红若最终落实,总金额则将达到3.64亿元,相当于该公司此前11年分红总额。根据公开数据,2007年到2017年,英力特现金分红共计约3.7亿元'
    }, {
        time:'10:15',
        newsCon:'分红方案披露的当天,英力特收盘价为10.85元。据此计算,英力特的股息率高达11%以上。此前的2017年,中国神华、江铃汽车两家公司,分别进行了2.97元/股、2.317元/股现金分红。相对于披露前的股价,中国神华的股息率超过16%,江铃汽车A、B股的股息率则达14.2%、21.3%'
    }]
}] // --------二维数组。如果单纯的使用{{~}} {{~}}进行嵌套,就会报错,dot无法进行正确的解读。
 
左思又想想到一个解决方案:将内部数组用dot循环,方法,在外部,进行循环。注意:是将循环的方法再次循环。
for (let i = 0 ; i<a.length ; i++) {
            let item = a[i];
            api.execScript({
                frameName: 'sl_news_fast_fm',
                script:'getStr('+ JSON.stringify(a[i]) +');'
            });
        }
api方法是我获取字符串的方法,:我对该方法进行了,循环,从而得到二维的数组对应的dom嵌套字符串。

doT模板双重循环模板渲染方法的更多相关文章

  1. shell脚本———双重循环——九九乘法表

    1.基础双重循环模板 2.break跳出单个循环 3.continue中止某次循环中的命令,但不会完全中止整个命令 4.九九乘法表

  2. 探究Javascript模板引擎mustache.js使用方法

    这篇文章主要为大家介绍了Javascript模板引擎mustache.js使用方法,mustache.js是一个简单强大的Javascript模板引擎,使用它可以简化在js代码中的html编写,压缩后 ...

  3. 织梦DedeCMS模板防盗的四种方法

    织梦(DedeCMS)模板也是一种财富,不想自己辛辛苦苦做的模板被盗用,在互联网上出现一些和自己一模一样的网站,就需要做好模板防盗.本文是No牛收集整理自网络,不过网上的版本都没有提供 Nginx 3 ...

  4. 织梦dede模板中广告的去除方法?

    织梦)dede模板中广告的去除方法1.我们先删除头部的广告,找到templetsdefault下的head.htm文件,打开后找到<div>{dede:myad name=’innerTo ...

  5. flask框架下的jinja2模板引擎(3)(模板继承与可以在模板使用的变量、方法)

    flask 框架下的jinja2模块引擎(1):https://www.cnblogs.com/chichung/p/9774556.html flask 框架下的jinja2模块引擎(2):http ...

  6. IDEA自定义liveTemplates(方法模板、类模板)

    IDEA自定义liveTemplates(方法模板.类模板) 前言,搞这个模板有何意义? 降低大家写方法注释的成本,统一风格.有时候不是开发同学不爱写注释,而是没有合适的载体和空间. IDEA模板设置 ...

  7. python的Web框架,Django模板标签及模板的继承

    模板标签 在传递数据的时候,会有大量的数据展示在浏览器上,而数据会是动态变化的,在html的编写中,数据也是需要动态的,而不能是写死的,如果动态展示呢. 给定的例子数据 views传递数据给html ...

  8. Django(十五)模板详解:模板标签、过滤器、模板注释、模板继承、html转义

    一.模板的基础配置及使用 [参考]https://docs.djangoproject.com/zh-hans/3.0/topics/templates/ 作为Web框架,Django提供了模板,用于 ...

  9. (转)DEDECMS模板原理、模板标签学习 - .Little Hann

    本文,小瀚想和大家一起来学习一下DEDECMS中目前所使用的模板技术的原理: 什么是编译式模板.解释式模板,它们的区别是什么? 模板标签有哪些种类,它们的区别是什么,都应用在哪些场景? 学习模板的机制 ...

随机推荐

  1. 团队转型,Scrum与DevOps要如何取舍?

    团队在践行敏捷的过程中,会有多种选择:Scrum.XP.Kanban.Crystal.精益生产.规模化敏捷等,其中最流行的敏捷开发方法当属Scrum.正因如此,大部分人对其产生了刻板印象:认为敏捷就是 ...

  2. 题解 洛谷 P5443 【[APIO2019]桥梁】

    考虑若只有查询操作,那么就可以构造\(Kruskal\)重构树,然后在线询问了,也可以更简单的把询问离线,把询问和边都按权值从大到小排序,然后双指针依次加入对于当前询问合法的边,用并查集维护每个点的答 ...

  3. Oracle修改表类型方法

    有一个表名为tb,字段段名为name,数据类型nchar(20). 1.假设字段数据为空,则不管改为什么字段类型,可以直接执行:alter table tb modify (name nvarchar ...

  4. C# WebClient几种常用方法的用法

    1.UploadData方法(Content-Type:application/x-www-form-urlencoded) //创建WebClient 对象            WebClient ...

  5. 前端学习(五):body标签(三)

    进击のpython ***** 前端学习--body标签 接下来的内容就比较多了,各位看官且听我慢慢道来... ... 使用a标签,链接到另一个页面 网页中<a>标签,全称:anchor. ...

  6. C++的vector的使用方法

    vector c++的vector的使用方法,创建,初始化,插入,删除等. #include "ex_vector.h" #include <iostream> #in ...

  7. 《Head First 设计模式》:抽象工厂模式

    正文 一.定义 抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类. 要点: 抽象工厂允许客户使用抽象的接口来创建一组相关的产品,而不需要知道实际产品的具体产品是什么.这样 ...

  8. Linux企业运维人员最常用命令汇总

    本文目录 线上查询及帮助命令 文件和目录操作命令 查看文件及内容处理命令 文件压缩及解压缩命令 信息显示命令 搜索文件命令 用户管理命令 基础网络操作命令 深入网络操作命令 有关磁盘与文件系统的命令 ...

  9. Django学习路36_函数参数 反向解析 修改404 页面

    在 templates 中创建对应文件名的 html 文件 (.html) 注: 开发者服务器发生变更是因为 python 代码发生变化 如果 html 文件发生变化,服务器不会进行重启 需要自己手动 ...

  10. python基础day6_字典dict

    数据类型划分:可变数据类型.不可变数据类型 不可变数据类型(又叫可哈希):元祖,bool ,int,str, 可变数据类型(又叫不可哈希):list,dict,set(集合) dict的key必须是不 ...