javascript - NG-show 没有按预期工作? Angular

标签 javascript angularjs ng-show

根据我对 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=! 可能会更干净一些。

关于javascript - NG-show 没有按预期工作? Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22714298/

相关文章:

javascript - AngularJS Controller As : updating controller field in $interval does not update ng-show

javascript - ng-show 仅在从一开始就设置为 true 时有效

javascript - BotFramework-WebChat 用占位符替换聊天头像

javascript - Fullpage.js - 视频和页面调整大小问题

javascript - anchor 标记上的 ng-disabled 有效,但标记仍然可单击

AngularJS 在访问不同页面时运行一个函数

javascript - 仅当在 Angular 中找到匹配项时才显示搜索结果(Ng-Repeat)

javascript - 在 Javascript 的闭包中处理 'this' 的更好方法?

Javascript 文件名加密和引用

angularjs - Golang 和 AngularJS 模板冲突