Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带ngRepeatStart/End的AngularJs ngSwitch_Angularjs_Switch Statement_Angularjs Ng Repeat - Fatal编程技术网

带ngRepeatStart/End的AngularJs ngSwitch

带ngRepeatStart/End的AngularJs ngSwitch,angularjs,switch-statement,angularjs-ng-repeat,Angularjs,Switch Statement,Angularjs Ng Repeat,我想知道如何使用ngRepeatStart和End在两个表行上显示ngSwitch,其中第二行仅在单击顶部一行时显示 以下是我所拥有的并想让其发挥作用(不起作用): {{user.name} {{user.email} {{user.active}} {{user.dob}日期:'EEEE,dd-MMMM-yyyy'} {{user.description}} 以下是有效的方法: <tbody data-ng-repeat="user in users

我想知道如何使用ngRepeatStart和End在两个表行上显示ngSwitch,其中第二行仅在单击顶部一行时显示

以下是我所拥有的并想让其发挥作用(不起作用):


{{user.name}
{{user.email}
{{user.active}}
{{user.dob}日期:'EEEE,dd-MMMM-yyyy'}
{{user.description}}
以下是有效的方法:

<tbody
                data-ng-repeat="user in users | filter : { name: search, active: searchActive }"
                data-ng-click="selectUser(user)"
                data-ng-switch on="isSelected(user)">
                <tr>
                    <td>{{ user.name }}</td>
                    <td>{{ user.email }}</td>
                    <td>{{ user.active }}</td>
                    <td>{{ user.dob | date: 'EEEE, dd MMMM yyyy' }}</td>
                </tr>
                <tr data-ng-switch-when="true">
                    <td colspan="4">
                        {{ user.description }}
                    </td>
                </tr>
            </tbody>

{{user.name}
{{user.email}
{{user.active}}
{{user.dob}日期:'EEEE,dd-MMMM-yyyy'}
{{user.description}}
我希望避免使用包装
tbody
标记,而是使用ngRepeatStart/End


有没有办法修改我的第一个示例以使其正常工作?

不要使用ng开关,只要使用ng show或ng if即可。这里有一个

编辑 好的,我想如果你真的想使用ng开关,尽管我建议不要这样做,如果你所做的只是检查真/假。这是最新消息。其诀窍是,当需要打开
,开关需要打开第二个


现在,如果您需要每个开关都是一个表行,那么您只需要使用
ng if
ng开关
属性需要在所有
ng开关的父级上,当
时。这就是为什么开关只有在打开
或切换到
时才起作用的原因。

谢谢,但是如果每次迭代都有两行以上的内容,有没有办法用ngSwitch来实现呢?比如说ng开关不是真的还是假的?现在的情况是ng switch的一个可怕的用例虽然我刚刚更新了plunker以使用ng switch这是正确的-可能不止一个用于切换的用例。第二个plunker的问题显然是,无论发生什么,我们最终都会得到空的tr标签。我想在这种情况下,我必须坚持使用tbody标签。谢谢
<tbody
                data-ng-repeat="user in users | filter : { name: search, active: searchActive }"
                data-ng-click="selectUser(user)"
                data-ng-switch on="isSelected(user)">
                <tr>
                    <td>{{ user.name }}</td>
                    <td>{{ user.email }}</td>
                    <td>{{ user.active }}</td>
                    <td>{{ user.dob | date: 'EEEE, dd MMMM yyyy' }}</td>
                </tr>
                <tr data-ng-switch-when="true">
                    <td colspan="4">
                        {{ user.description }}
                    </td>
                </tr>
            </tbody>