Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 将一个计算类添加到angular中的HTML元素_Angularjs_Ng Class - Fatal编程技术网

Angularjs 将一个计算类添加到angular中的HTML元素

Angularjs 将一个计算类添加到angular中的HTML元素,angularjs,ng-class,Angularjs,Ng Class,我在页面上呈现一组用户图标。我想根据他们的ID给他们上课 示例用户对象 { id: 1234, name: "foo" } <div ng-repeat="user in userList" class="something-{{ user.id % 10 + 1 }}"> </div> HTML元素 { id: 1234, name: "foo" } <div ng-repeat="user in userList" class="something-{{

我在页面上呈现一组用户图标。我想根据他们的ID给他们上课

示例用户对象

{ id: 1234, name: "foo" }
<div ng-repeat="user in userList" class="something-{{ user.id % 10 + 1 }}">
</div>
HTML元素

{ id: 1234, name: "foo" }
<div ng-repeat="user in userList" class="something-{{ user.id % 10 + 1 }}">
</div>

因此,类将像“something-1”、“something-2”。。。基于用户ID


上面的代码不起作用。元素上没有显示任何类。正确的方法是什么?

请尝试使用
ng init
。在这种情况下,您的HTML将

<div ng-repeat="user in userList" ng-init="myId = (user.id % 10) + 1;" class="something-{{ myId }}">
</div>

使用ng类

 <div ng-repeat="user in userList" data-ng-class="{class1:user.id===1234}"></div>

我将在控制器中构建类,以便保持视图整洁,不受更适合控制器的JS操作的影响

users.forEach(function (user) {
  user.klass = 'something-' + (user.id % 10 + 1);
});



Vinet-我正在尝试生成“something-1”、“something-2”等类。没有条件地显示“something”。很有趣-但看起来我原来的问题起作用了。我刚遇到了一个拼写错误,您的代码很好,不确定如何测试,但代码还可以。对于id
1234
,它将呈现
class=“something-5”
<div ng-repeat="user in users" class="{{::user.klass}}"> 
<!-- :: added. kill the watchers -->