gpt4 book ai didi

Angularjs rootscope 不更新 ngClass

转载 作者:行者123 更新时间:2023-12-02 21:36:14 24 4
gpt4 key购买 nike

我很确定这又是一件愚蠢的事情。我正在学习 angularjs,所以我还没有得到完整的范围,但我已经到达那里了。我尝试了一切,并真正搜索了我能找到的任何东西,但似乎没有任何效果。

我正在尝试在我的布局文件中执行 ng-class="..."但表达式已在我的 Controller 中设置,但不知何故它没有呈现。当我将它放入我的 ng-view 文件中时它就会被渲染。我知道他只渲染了文件的一部分,但我希望他也能在 ng-view 上渲染 ng-class。这可能吗,还是在部分 html 文件中放入 div 更容易。

简单的html文件

<body>
<ng-view ng-class="{ 'splash': splash=='splash' }"></ng-view>
</body>

我的 Controller

angular.module('xxx.splash')
.controller('IndexCtrl', function($scope, $rootScope, config) {
$rootScope.splash = 'splash';

$scope.login = function(e) {
alert('Soon. How soon? Very soon.');
}
});

最佳答案

当您在根作用域中定义变量时,您无法以与在本地作用域中定义变量相同的方式访问它。 $rootScope可以使用 $root.<variableName> 在 AngularJS 模板中访问变量,因此您的 HTML 文件应更改为:

<body>
<ng-view ng-class="{ 'splash': $root.splash=='splash' }"></ng-view>
</body>

您可以看到 $scope 的差异和$rootScope在这个demo

关于Angularjs rootscope 不更新 ngClass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17201560/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com