随时可以给doT模板传任何你想要的值

我以前一直以为只有传给后台的数据才能用doT模板写入,

其实,随时可以把本地处理的数据,仅仅的一个变量,改头换面成一个it关键字下面的属性。

方法就是在tpl中给它赋值。

要注意的是,首先tpl中的属性值必须在onCreate中的setView中初始化过,也就是get过,

此处并不是必须要config中声明过才可以。

config: {

    },
Sorted = [],
Alphabet = [],
onCreate: function() {

    this.setView("cityList.html", {
    items : null,
    alphabet : this.getAlphabet()
    });
    this.scroller = null;


},

这个属性值,规范化命名应该是小写字母打头,为了后面的get方法把它变成大写字母打头的。

属性值对应html模板中的属性值。

自己定义的变量,变量名没有这种限制,因为它只是将被赋值给这个属性值,他们甚至都不一定要用同一个单词,心里有数就好。

//format the cities data
        me.cityList(items.cities);
        items.cities = me.Sorted;
        //inject to doT
        var tpl = itu.view.get("resources/cc/cityList/cityList.html"),
            html = tpl({
                items: items,
                alphabet: me.Alphabet
            });
        me.$content = $.create(html);
        me.$element.empty().append(me.$content);

一句话总结:“我只需要在 模板中 写个属性,在setview里面get这个属性,然后tpl里面给它赋值,config不用写”

原文地址:https://www.cnblogs.com/haimingpro/p/4118205.html