我的 Controller 中有这个功能:
$scope.menus = {};
$http.get('web/core/components/home/nav.json').success(function (data) { $scope.menus = data; $scope.validaMenu(); }).error(function () { console.log('ERRO') });
$scope.m = {};
$scope.validaMenu = function () {
for (var i = 0; i < $scope.menus.length; i++) {
$scope.m[$scope.menus[i].name] = { url: $scope.menus[i].url, style:"ativo"};
}
};
在我的 JSON 中,我得到了这个:
[
{"name" : "CAD_Empresa", "url": "#/Cadastro/Empresa"},
{"name" : "CAD_Perfil", "url": "#/Cadastro/Perfil"},
{"name" : "CAD_PlanoConta", "url": "#/Cadastro/PlanoConta"},
{"name" : "CAD_CentroCusto", "url": "#/Cadastro/CentroCusto"},
{"name" : "CAD_TipoDocumento", "url": "#/Cadastro/TipoDocumento"},
{"name" : "CAD_ParceiroComercial", "url": "#/Cadastro/ParceiroComercial"}
]
这是我的 HTML:
<ul class="multi-column-dropdown">
<li><a ng-class="{{m['CAD_Usuario'].style}}" ng-href="{{m['CAD_Usuario'].url}}" >Usuário</a></li>
<li><a ng-class="{{m['CAD_Empresa'].style}}" ng-href="{{m['CAD_Empresa'].url}}" >Empresa</a></li>
</ul>
此代码采用我的 JSon 并创建一个链接,我的 ng-route 将其重定向到另一个页面。我想要做的就是,在没有任何链接的 < li > 选项上显示一个不允许的光标。为此,我创建了上面的函数并像这样在我的 CSS 上强制光标:
.multi-column-dropdown li a {
cursor: not-allowed;
}
没关系,它正在工作。但是,您可以检查我是否在我的 HTML 上使用 ng-class 创建了一个自定义类,对吗?当我尝试使用我的类 (ativo) 在我的 css 上设置任何内容时,我没有更改任何内容。
知道为什么我的 ng-class 被忽略了吗?
最佳答案
删除双花括号 {{}}
。 ng-class
需要一个表达式。
<li><a ng-class="m['CAD_Usuario'].style">
关于javascript - 调用时 ng-class 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27291918/