小胡子 JS 部分不渲染

MustacheJS partials not rendering

我正在尝试对具有可枚举 属性 的简单对象使用部分,但部分不会呈现。

这是我 sample 的 link。

对象

obj6    = {
           people : [
              { firstName : 'Jayson', lastName : 'Buquia', isMale : true },
              { firstName : 'Jane', lastName : 'Doe', isMale : false },
              { firstName : 'John', lastName : 'Smith', isMale : true }
            ]
          };

偏音

 partials = { person : '<li>{{ firstName }} {{ lastName }}{{^isMale}}, a female {{/isMale}}.</li>' }

模板

<ul>
  {{ #people }} 
    {{>person}}
  {{ /people }}
</ul>

尝试将 tpl = $('.template .main').html() 更改为 tpl = $('.template .main').text(),因为 html() wll return <h3>Names:</h3><ul>{{ #people }} {{&gt;person}}{{ /people }}</ul> 不是有效模板。

var $p     = $('#container'),
tpl     = $('.template .main').text(),           
partials = { person : '<li>{{ firstName }} {{ lastName }}{{^isMale}}, a female {{/isMale}}.</li>' },
        obj6    = {
            people : [
                { firstName : 'Jayson', lastName : 'Buquia', isMale : true },
                { firstName : 'Jane', lastName : 'Doe', isMale : false },
                { firstName : 'John', lastName : 'Smith', isMale : true }
            ]
        };

 $p.append(Mustache.render(tpl,obj6,partials));

Demo

或者将您的 div 标签转换为 script 标签,这里是演示模板:-

Demo