我有一个包含多个StateGroup
s的项目:
MyObject.qml
import QtQuick 2.0
Item
{
id: root
property alias myStates: myStateGroup.states
// ..
StateGroup
{
id: myStateGroup
states:
[
State
{
name: "first"
},
State
{
name: "second"
},
State
{
name: "third"
}
]
}
}
我想迭代状态名称:(在另一个文件中)
Component.onCompleted:
{
for (var i in instance.myStates)
{
console.log(JSON.stringify(i))
console.log(i.name)
//....
}
}
我得到的是
"0"
undefined
"1"
undefined
"2"
undefined
我想迭代各州的名字。我得到整数而不是State
的错误是什么?
我知道我可以使用简单的C-like,但这看起来非常糟糕。我想使用for ... in
语法。
答案 0 :(得分:3)
请尝试以下操作:
Component.onCompleted:
{
for (var i in instance.myStates)
{
console.log(instance.myStates[i].name)
}
}
for..in放入i数组项属性名称值。在这种情况下,它只是整数。