QML中(QML或JS) 文件與其它JS文件互相訪問變量或方法
????????最近遇到一個(gè)很有意思的問題,在QML中,新建一個(gè)js文件,這個(gè)js文件是獨(dú)立專門解析一些數(shù)據(jù)的,qml可以創(chuàng)建一個(gè)線程來單獨(dú)訪問,有趣的是我想通過這個(gè)js文件來訪問另外一個(gè)js文件的內(nèi)容和變量,不然就要把另外一個(gè)js文件寫好的方法全部貼到這個(gè)js文件中,這樣就點(diǎn)吃力不討好,累贅的很。
????? ? 于是翻遍網(wǎng)絡(luò)文檔,發(fā)現(xiàn)還真有一個(gè)方法,可以查看我轉(zhuǎn)載的這篇文章:【Qt】QML中的JavaScript用法詳解?在這個(gè)里面是最后講到了這點(diǎn),我使用后發(fā)現(xiàn)直接調(diào)用方法即可,有一點(diǎn)是,他不會有任何顏色高亮提示,但是會生效。
? ? ? ? 下面列出js中導(dǎo)入另外一個(gè)js文件方法是:? ?Qt.include(XXXX.js)
? ? 例如:
? ? ?然后列出一下JS文件中導(dǎo)入QML文件方法是:.import?TypeNamespace?MajorVersion.MinorVersion?as?Qualifier?
? ? 例如:在js里加載QML模塊數(shù)據(jù)庫
????????.import QtQuick.LocalStorage 2.0 as Sql
????????var db = Sql.LocalStorage.openDatabaseSync("TestDB", "1.0", "This is db", 1000000);
? ? ? 具體的使用就是這兩種,記住,js中調(diào)用qml和js的文件都不會出現(xiàn)高亮,也不會打點(diǎn)自動(dòng)識別補(bǔ)全,所以一開始會很容易認(rèn)為是錯(cuò)誤的。具體其他的用法在我剛才提到的那篇轉(zhuǎn)載的博客中都有。
? ?
????????