javascript - 如何从json渲染mustache js

标签 javascript jquery json mustache

我有一个具有以下格式的 json。我想使用 Mustache js 在 View 中填充该 json。

Json 格式

Image

渲染json的代码是

render: function () {
    var tmplData = self.jsonArrayFull;
    var out = Mustache.render(self._dashboardTemplate(), tmplData);
    self.element.html(out);
}

_dashboardTemplate: function () {
            var template = '<div id="layoutContainer" style="background-color:{{backgroundColor}}"></div>';
            return template;
        },

我该怎么做?它的渲染为空。请帮忙..

最佳答案

您的问题来自于 tmplData 是一个数组,而不是一个对象,因此当您的模板查找 {{backgroundColor}} 时,它的背景颜色为数组,不存在。

要解决此问题,请选择数组中的第一项传递给 Mustache.render 即:

Mustache.render(self._dashboardTemplate(), tmplData[0])

或者在模板中放入一个循环来渲染每个数组项,例如:

var template = '{{#.}}<div id="layoutContainer" style="background-color:{{backgroundColor}}"></div>{{/.}}';

查看这个问题:Can mustache iterate a top-level array?有关渲染顶级数组的详细信息。

关于javascript - 如何从json渲染mustache js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24776142/

相关文章:

javascript - Highchart pie - 动态饼图的数组动态

javascript - jQuery 是如何完成它的异步动画的?

javascript - 遍历元素以查找特定 ID

javascript - 如何根据类别附加正确的详细信息?

java - JSON Jackson,如何使用只读属性别名来实现向后兼容性?

javascript - 当 promise 失败时如何捕捉?

javascript - 没有js动画效果css渐变

javascript - 通过预处理更改元素 ID 和类

javascript - 需要在我的 React-Native 应用程序中使用 Apache Kafka

javascript - 如何强制Azure函数将JSON输出到浏览器