javascript - Angular ui-router 在特定状态下显示/隐藏元素

标签 javascript angularjs angular-ui-router

我想根据我的 Angular 应用程序的状态显示/隐藏特定内容。但它显然只适用于“ child 状态”......

我尝试这样做:

function($scope, $rootScope, $state){
     $rootScope.$state = $state;
}

然后是我的 html:

// THIS DOES NOT WORK - ELEMENT REMAINS HIDDEN!!!             
<div data-ng-show="$state.includes('home')">some content...</div>

// THIS WORKS - ELEMENT IS VISIBLE ON STATE!!
<div data-ng-show="$state.includes('artist.videos')">some content...</div>

所以,我的问题是:为什么它在 'home' 状态下不起作用??

这里有什么问题?

最佳答案

这与范围继承有关。查看以下链接:

https://github.com/angular/angular.js/wiki/Understanding-Scopes

具体:

“通过遵循始终有一个‘.’的“最佳实践”,可以轻松避免原语的这个问题。在你的 ng-models 中

有一个“.”在您的模型中将确保原型(prototype)继承发挥作用。所以,使用 而不是 ”

关于javascript - Angular ui-router 在特定状态下显示/隐藏元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31557707/

相关文章:

php - 在environment.prod.ts 文件上设置条件

php - PHP 自动分配数组功能的 javascript 等价物是什么?

javascript - 如何获取 onclick 函数在 JavaScript 中被调用的位置

javascript - Three.js场景依赖一个参数

javascript - 获取每个表面或 View 的 GenericSync

javascript - 在 Developer Console 中获取 AngularJS 的对象和变量列表

html - 如何使用 angular-scrollable-table 更改列的宽度

javascript - 我在哪里可以找到 angularjs typescript 的 api 引用?

angularjs - Angular ui-router 1.0.0rc 过渡在重定向上被取代

javascript - 如果没有 $timeout,UI 路由加载微调器将无法工作