如何使用此Javascript对象制作ractive模板?

时间:2016-11-04 17:08:43

标签: javascript ractivejs

我想访问此对象的所有属性。

var country = {
 country: "US",
 states : [{
    state: "california",
    capital: "sacramento"
    },
    {
    state: "texas"
    capital: "austin"
    }]
};

我尝试了ff,但只渲染了国家/地区值。

{{#each country}}
   {{country}}

   {{#each states}}
      {{states.state}} {{states.capital}}
   {{/each}}
{{/each}}

2 个答案:

答案 0 :(得分:0)

您正试图迭代country,好像它是一个数组,但在您的示例中只是一个普通对象。在这种情况下,此http://jsfiddle.net/ns8f8mwa/将打印该对象。 如果你想首先循环每个国家,那么状态,这个http://jsfiddle.net/jgmbu7wr/就是一个例子。

答案 1 :(得分:0)

这是不正确的部分:

{{#each states}}
  {{states.state}} {{states.capital}}
{{/each}}

由于states是一个数组,states.state并不意味着什么 - 只需直接使用该属性:

{{#each states}}
  {{state}} {{capital}}
{{/each}}

顺便说一句,构建数据通常是个好主意:

var country = {
  name: "US",
  states : [{
    name: "california",
    capital: "sacramento"
  },
  {
    name: "texas"
    capital: "austin"
  }]
};

换句话说,states中的项目是具有name属性的对象 - 对象状态,它不 一个state财产。我过去常常做过这样的事情而后悔,因为你在代码中发现了state.state的令人困惑的引用!

相关问题