假设我们有以下的JS文件:为什么QML引擎多次实例化相同的脚本?
logic.js
function Car(){}
这些QML文件:
comp1.qml
import 'qrc:/js/logic.js' as Logic
Item{
property var item: Logic
}
COMP2 .qml
import 'qrc:/js/logic.js' as Logic
Item{
property var item: Logic
}
如果运行和评估,你会看到,那些item
性的判定是不相等的。为什么?
在我的应用程序,在一个QML文件我new
一个对象,并想检查它是否是instanceof
构造函数或没有,但因为这些构造函数是不相等的(因为这些Logic
s为没有),instanceof
操作员始终返回false
。
限定符和JavaScript文件之间总是存在一对一映射。我想这就是为什么那些“逻辑”是不同的。 –
您可能会尝试使用QML-Singleton-File,您可以在其中导入js文件并获得您的属性。然后你导入这个单例。 – derM