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. 彻底禁用咱的Win10电脑更新

    一.关闭Windows Update服务 右键“此电脑”>“管理” 找到Windows Update服务双击打开,服务状态>停止,服务类型>禁用 “恢复”选项卡,三项全部选择“无操作 ...

  2. 47 张图带你 MySQL 进阶!!!

    我们在 MySQL 入门篇主要介绍了基本的 SQL 命令.数据类型和函数,在局部以上知识后,你就可以进行 MySQL 的开发工作了,但是如果要成为一个合格的开发人员,你还要具备一些更高级的技能,下面我 ...

  3. 【mysql】- 索引简介篇

    简介 我们都知道mysql使用存储引擎的是InnoDB,InnoDB使用的索引的对应的数据结构是B+树 结构图: 如上图所示,我们实际用户记录是存放在B+树的最底层的节点上,这些节点也被称为叶子节点或 ...

  4. 一年经验Java开发0713面试

    @ 目录 介绍一下你做的某些模块,有些什么比较复杂的地方? 你们的文件怎么存储的? 怎么没有用文件服务器? 文件存储有没有做备份? 在项目上有没有什么搞不定的问题? 对搞不定的问题你是怎么处理的? 你 ...

  5. Redis持久化功能

    Redis为了内部数据的安全考虑,会把本身的数据以文件的形式保存在硬盘中一份,在重启之后会自动把硬盘的数据恢复到内存(redis)里面. 一.snap shotting 快照持久化 该持久化默认开启, ...

  6. Laravel 配置 SqlDebug 服务,进行实时监听打印 SQL

    0:释义 什么是服务容器 简而言之,Laravel 服务容器 是一个用于存储绑定组件的盒子,它还会为应用提供所需的服务. Laravel 服务容器是用于管理类的依赖和执行依赖注入的工具,By Lara ...

  7. MacOS下如何设置hosts?

    hosts文件是什么? hosts文件是一个系统文件,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”.当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中 ...

  8. 编程小白的第一本python入门书电子版|百度网盘分享无偿获取|评分超高的python教材

    点此进入网盘下载提取码:cr74 为了能让更多的编程小白轻松地入门编程,把高效学习法结合 Python 中的核心知识,写成了这本书.随意翻上几页,你就会发现这本书和其他编程书的不同,其中有大量的视觉化 ...

  9. Python os.read() 方法

    概述 os.read() 方法用于从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串.高佣联盟 www.cgewang.com ...

  10. PHP str_getcsv() 函数

    定义和用法 str_getcsv() 函数解析 CSV 格式字段的字符串,并返回一个包含所读取字段的数组. 语法 str_getcsv(string,separator,enclosure,escap ...