将Json绑定到Html的有效方法?

时间:2015-11-10 13:10:33

标签: angularjs

我试图找到一种更好的方法将我的json数据绑定到我的html。

JSON:

$scope.json = { 'one': { 'name': 'level1', 'two': { 'name': 'level2', 'three': { 'name': 'level3' } } } };

HTML

<div ng-controller="myController" >
    <div ng-repeat="data in json">  -- (1)
        <b>{{data.name}}</b>
        <div ng-repeat="data1 in data">
            <b>{{data1.name}}</b>
            <div ng-repeat="data2 in data1 track by $index"><b>{{data2.name}}</b></div>  -- (2)
        </div>
    </div>
</div>

指针: //在视图中标记

  1. 我的json数据中没有数组,所以,有更好的方法而不是使用ng-repeat(传统类型)。像敲门或模板中的with绑定一样(我不确定如何)。
  2. 我看到我的json中没有重复但仍然要妥协我在最后一个内部div使用track by $index的错误(如果排除最终div我看不到错误)。

1 个答案:

答案 0 :(得分:1)

  

1:我的json数据中没有数组,所以有更好的方法   而是使用ng-repeat(传统的)。任何喜欢的东西   敲门或模板中的绑定(我不确定如何)。

无法使用JSON对象进行ng-repeat,但您可以使用.运算符直接使用JSON对象作为属性。

检查以下代码

<div ng-controller="myController" >
    <div>
        <b>{{json.one.name}}</b>
        <b>{{json.one.two.name}}</b>
        <b>{{json.one.two.three.name}}</b>
    </div>
</div>
  

2:我看到我的json中没有重复,但仍然要妥协   错误我一直在最后的内部div使用$ index跟踪(如果   排除最后的div我没有看到错误。)

出错的原因是您尝试获取没有索引的JSON object 索引