Ng-show没有像预期的那样工作?角

Ng-show not working as expected? Angular

本文关键字:工作 Ng-show      更新时间:2023-09-26

根据我对Angular的理解,下面两个元素一次只能显示一个,但由于某种原因,两个元素都显示出来了。我的代码中是否有我看不到的错误?

我使用ng-show错误吗?

<div class="no_people" ng-show="!person.name">
    <p>no people</p>
</div>
<div ng-repeat="person in details.people">
    <div class="persons_table">
        <table>
            <tbody>
                <tr class="top_row">
                    <td colspan="2">                            
                        <span class="person_name">
                            {{ person.name }}
                        </span>
                        <span class="person_address" >
                            {{ person.address }}
                        </span>
                    </td>
                </tr>
            </tbody>
        </table>
    </div>
</div>

我认为应该这样做:

<div class="no_people" ng-hide="details.people.length">
    <p>no people</p>
</div>

person变量只能在ng-repeat内部访问。

ng-hide代替ng-show=!可能更干净一点。

正如我所看到的,你需要这个:

<div class="no_people" ng-hide="details.people.length > 0">
    <p>no people</p>
</div>