Angularjs根据$ state

时间:2015-05-08 00:28:09

标签: javascript angularjs angular-ui-router

所以我有以下几点:

<span>{{ $root.page_header || "default" }}</span>

但只要$state名称不是特定的$state,我就希望默认

从逻辑上讲,如果我有状态: home settings ,&amp; 个人资料,只要$ state不在主页,我就希望$root.page_header 默认。如果它在家,我会让我的控制器定义$rootScope.page_header是什么 - 如果这有意义的话。

我认为我需要弄清楚如何首先获取$州名,然后以某种方式将其添加到{{ }}

有人有任何建议吗?

1 个答案:

答案 0 :(得分:1)

如果要对视图执行逻辑,可以使用javascript的内联if语句[Conditional(Ternary)Operator]。

<span>{{ $root.page_header == 'home' ? $root.page_header : "default" }}</span>

否则,如果您想在控制器中使用它 像这样分配page_header

$scope.page_header = $root.page_header == 'home' ? $root.page_header : "default";

然后在视图中使用它

<span>{{page_header}}</span>

<span ng-bind="page_header"></span>

顺便说一下,我认为你可以通过

获得州名
$scope.page_header = $state.current.name;
console.log($scope.page_header)