gpt4 book ai didi

javascript - 对象属性值作为类名,ng-class

转载 作者:数据小太阳 更新时间:2023-10-29 04:38:49 25 4
gpt4 key购买 nike

试图寻找这个问题的答案,但没有成功。

在 angularJS 中使用 ng-class 时,是否可以将属性的值作为类名?

我的意思的一个例子:

var things = [
{
a: "abc",
aTrue: true
}
];

然后在 Angular 中(在这个例子中使用 ng-repeat)

<div ng-repeat="thing in things" ng-class="{thing.a: !!thing.aTrue}></div>

我正在寻找类名 "abc" - 但这给了我一个类名 "thing.a"。这甚至可能吗,我哪里错了?

在此先致谢,感谢您的帮助。

最佳答案

不起作用的原因是因为它的行为就像一个 Javascript 对象,所以你不能在 javascript 中执行此操作,对吗

var test = 'hello';

var object = {
test: 'hi'
};

object[test] === undefined // true // or
object.hello === undefined // true
object.test === undefined // false

所以你不能用这样的变量创建一个。所以尝试这样的事情。

 ng-class="{ true: thing.a, false: '' }[thing.aTrue]"

演示:http://jsfiddle.net/XzXzR/1/

这是做什么的(javascript 中的解释)

var test = {
one: 'hello',
two: 'world'
}['one'];

测试等于什么?

test ===  Object {one: "hello", two: "world"} // false
test === Object {one: "hello"} // false
test === Object {two: "world"} // false
test === 'one' // false
test === 'two' // false
test === 'hello' // ** true **
test === 'world' // false

关于javascript - 对象属性值作为类名,ng-class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18787774/

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