property variant a: {}
似乎並沒有工作。 a
最終未定義,而不是空字典。無法初始化QML屬性{}
我不是非常有經驗的JavaScript ...什麼是初始化屬性,以持有空字典正確的方法是什麼?
以下QML打印 「QRC:/main.qml:13:類型錯誤:類型錯誤」 在控制檯上。但是,如果a
初始化爲{"dummyentry": 42}
,然後 ,則會記錄預期結果。
import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Layouts 1.3
ApplicationWindow {
visible: true; width: 600; height: 200
property variant a: {}
Component.onCompleted: {
console.log("initial a="+JSON.stringify(a)) // TypeError: Type error
a["newkey"] = 999 // gets "TypeError: Type error"
console.log("updated a="+JSON.stringify(a))
}
}
此行爲全部在文檔http://doc.qt.io/qt-5/qml-var.html中闡述。對於行爲的*推理*對我來說不太清楚。 –