Javascript 在ng类中传递带参数的函数以获取类
我正在尝试使用ng类的角度。我有一个函数,它根据我们发送给它的参数返回类。我怎样才能做到呢 以下是我尝试过的:Javascript 在ng类中传递带参数的函数以获取类,javascript,angularjs,Javascript,Angularjs,我正在尝试使用ng类的角度。我有一个函数,它根据我们发送给它的参数返回类。我怎样才能做到呢 以下是我尝试过的: <div ng-class="{ getClass(key) }" > 只要返回一个字符串就行了。但当我添加这个anfull.forEach时,它就停止了。在调试器中,循环工作正常并返回正确的数据 我知道它可以通过过滤器实现,但我只想这样做。您不应该使用单个花括号,只需将它们移除即可: <div ng-class="getClass(key)"> 或者您可以
<div ng-class="{ getClass(key) }" >
只要返回一个字符串就行了。但当我添加这个anfull.forEach时,它就停止了。在调试器中,循环工作正常并返回正确的数据
我知道它可以通过过滤器实现,但我只想这样做。您不应该使用单个花括号,只需将它们移除即可:
<div ng-class="getClass(key)">
或者您可以使用更简单的版本:
getClass = function(keyVal) {
for (var i = 0; i < myArray.length; i++) {
if (myArray[i].key === keyVal) {
return myArray[i].class;
}
}
}
getClass=函数(keyVal){
对于(var i=0;i
更新
你可以这样做
myapp.controller('myCtrl', function ($scope) {
$scope.getClass = function(a){
return a;
}
});
和在模板中
<div ng-class="getClass('red')">text</div>
文本
您正在从的回调函数中为每个方法返回值..,这不正确..,因为您希望从getclass方法返回值 试试这个
$scope.getclass =function(k){
Var c="";
angular.foreach(arr,function(v){
//to do
c=k;
});
return c;
};
使用双大括号并检查是否也可以添加阵列?嘿!我试过这个。但它不起作用。在调试器中,函数返回类,但它没有反映在HTML中。您的问题已更改,我已更新了答案,它现在应该可以工作了。PS:您确定在调试器中getClass返回类,还是只在forEach中看到您的console.log?如果我希望在呈现模板时调用它怎么办?我尝试了这个。在我的例子中,当简单地返回某个东西时,它是有效的。但是我也使用了一个
角度.forEach
。我加上这个之后,它就停止工作了。在调试器中,它发送正确的值。但它没有反映在HTML中。@charger73不从forEach回调返回。.设置一些变量。.从getClass方法返回值
myapp.controller('myCtrl', function ($scope) {
$scope.getClass = function(a){
return a;
}
});
<div ng-class="getClass('red')">text</div>
$scope.getclass =function(k){
Var c="";
angular.foreach(arr,function(v){
//to do
c=k;
});
return c;
};