ArtTemplet模板 参数传递 动态绑定

<script id="test" type="text/html">
        测试模板:{{Name}}
        {{Item = QueryPage(20)}}
        {{ each Item as value i}}
          第 {{i}} 个值 {{value}}<br/>
        {{/each}}
        <br /><br />
        重新设置后绑定:<br />
        {{Item = QueryPage(50)}}
        {{ each Item as value i}}
        第 {{i}} 个值 {{value}}
        &nbsp;&nbsp;&nbsp;
        {{/each}}
    </script>
        <script type="text/javascript">
            
            var data = {
                Name: "我",
                Des: "--------XXrfgsdfgsd",
                Item: null,
                QueryPage: function (len) {
                    var item = [];
                    for (var i = 0; i < len; i++)
                        item.push("str" + i);
                    return item;
                },
                Count: 0
            }


            
            var fuc = template.compile(document.getElementById("test").innerHTML, data);
            var info = fuc(data);
            document.write(info);


        </script>


没有使用helper传递函数,直接在模板上传递参数.


注意事项: 

     调用的函数 QueryPage 需要是在传入对象上定义的函数。

     QueryPage内部对Item的操作会失效。必须使用返回值,返回到同名的临时变量上。所以,一个函数只能设置一个变量。变量不能使用var定义,artTemplate会自动定义。

     一个函数调用会导致一个空字符串被push到结果中,这是多余的操作。所以,非必要情况下,不要使用这种方式来构造数据。

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值