问题描述
在一个arttemplate模板引擎和node构建的项目中,其中有这样一段代码,在一个ajax异步回调中拿到数据后,填充模板,渲染到html中,但是这里的
a.html
const testHtml = require('@templates/test');
if(res.code === 1) {
$('#box').html(testHtml(res));
}
不是很懂,其中test.html模板文件代码如下
test.html
<ul class="main-person clear">
{{each object as v i}}
<li class="{{(i%4 == 3 && i != 0) ? 'mr-list0 clear': 'clear'}}">
<div class="img-box" data-word="{{v.memberName}}">
<img src="" width="60" height="60"/>
</div>
<div class="info">
<span title="v.memberName">{{v.memberName || '未购买'}}</span>
</div>
</li>
{{/each}}
</ul>
$('#box').html(testHtml(res));
为什么require这个模板文件进来后,渲染这个模板的时候,testHtml可以将res作为参数,arttemplate有这个用法么?
因为
require
出来的可以是个方法,这取决于你模块导出的是什么。