Html 使用$index设置动态id

Html 使用$index设置动态id,html,angularjs,indexing,parent,Html,Angularjs,Indexing,Parent,我有这个密码: 我的列表应该像导航一样工作,包括主导航点和副导航点: list = [ { Id: 1, Name: 'Main 1', Items: [ { Id: 1, Name: 'Sub 1' }, { Id: 2, Name: 'Su

我有这个密码:

我的列表应该像导航一样工作,包括主导航点和副导航点:

list = [
    {
        Id: 1,
        Name: 'Main 1',
        Items: [
            {
                Id: 1,
                Name: 'Sub 1'
            },
            {
                Id: 2,
                Name: 'Sub 2'
            }
        ]
    },
    {
        Id: 2,
        Name: 'Main 2',
        Items: [
            {
                Id: 1,
                Name: 'Sub 1'
            },
            {
                Id: 2,
                Name: 'Sub 2'
            }
        ]
    }
];
这是我的HTML。我用ng repeat循环主要点及其子点,并尝试用
$index
动态设置一些id:

<div class="wrapper" ng-repeat="item in list">
    <div id="main_{{$index}}">{{item.Name}}</div>
    <div id="main_{{$parent.$index}}_sub_{{$index}}" ng-repeat="sub in item.Items">
        <div>&mdash; {{sub.Name}}</div>
    </div>
</div>
现在,我的目标是将
id
分配给带有main的
div
,以及带有subs的My
div
。我用
$index
将当前索引添加到main
div
中的我的id中,然后我尝试将子div的id与main(其父级)和当前索引中的索引结合起来。为了获取父级的索引,我使用了
$parent.$index
。我的预期结果如下:

Main 1 -> id = main_0
- Sub 1 -> id = main_0_sub_0
- Sub 2 -> id = main_0_sub_1
Main 2 -> id = main_1
- Sub 1 -> id = main_1_sub_0
- Sub 2 -> id = main_1_sub_1

但这在目前不起作用。主分区的id正确,但子分区的id不正确。我认为$parent.$index应该可以工作,但是主的当前索引有一个问题。我不知道怎么解决这个问题。我希望有人能帮我。

我注意到你想要的是$index-1。试试这个:

<div class="wrapper" ng-repeat="item in list">
    <div id="main_{{$index-1}}">{{item.Name}}</div>
    <div id="main_{{$parent.$index-1}}_sub_{{$index-1}}" ng-repeat="sub in item.Items>
        <div>&mdash; {{sub.Name}}</div>
    </div>
</div>

{{item.Name}

试试下面的代码片段,它在这里工作得很好

var-app=angular.module('app',[]);
应用程序控制器('Ctrl',函数($scope){
$scope.list=[
{
Id:1,
名称:'Main 1',
项目:[
{
Id:1,
名称:“Sub 1”
},
{
Id:2,
名称:“Sub 2”
}
]
},
{
Id:2,
名称:'Main 2',
项目:[
{
Id:1,
名称:“Sub 1”
},
{
Id:2,
名称:“Sub 2”
}
]
}
];
});

{{item.Name}-main{{{$index}
&mdash;{{sub.Name}-main{{$parent.$index}}{u sub{{$index}

您的代码运行正常,唯一的问题是您在内部ng repeat@gudzo中丢失了关闭
,亲爱的,多大的错误,谢谢先生!
<div class="wrapper" ng-repeat="item in list">
    <div id="main_{{$index-1}}">{{item.Name}}</div>
    <div id="main_{{$parent.$index-1}}_sub_{{$index-1}}" ng-repeat="sub in item.Items>
        <div>&mdash; {{sub.Name}}</div>
    </div>
</div>