当前位置:首页 > 芯闻号 > 充电吧
[导读]        最近遇到一个很有意思的问题,在QML中,新建一个js文件,这个js文件是独立专门解析一些数据的,qml可以创建一个线程来单独访问,有趣的是我想通过这个js文件来访问另外一个js文件的内

        最近遇到一个很有意思的问题,在QML中,新建一个js文件,这个js文件是独立专门解析一些数据的,qml可以创建一个线程来单独访问,有趣的是我想通过这个js文件来访问另外一个js文件的内容和变量,不然就要把另外一个js文件写好的方法全部贴到这个js文件中,这样就点吃力不讨好,累赘的很。

        于是翻遍网络文档,发现还真有一个方法,可以查看我转载的这篇文章:【Qt】QML中的JavaScript用法详解 在这个里面是最后讲到了这点,我使用后发现直接调用方法即可,有一点是,他不会有任何颜色高亮提示,但是会生效。

        下面列出js中导入另外一个js文件方法是:   Qt.include(XXXX.js)

    例如:

// script2.js    Qt.include("factorial2.js")    function showCalculations(value) {      console.log("Call factorial() from script2.js:", factorial(value));  }    // factorial2.js    function factorial(a) {      a = parseInt(a);      if (a <= 0)          return 1;      else          return a * factorial(a - 1);  }  

     然后列出一下JS文件中导入QML文件方法是:.import TypeNamespace MajorVersion.MinorVersion as Qualifier 

    例如:在js里加载QML模块数据库

        .import QtQuick.LocalStorage 2.0 as Sql

        var db = Sql.LocalStorage.openDatabaseSync("TestDB", "1.0", "This is db", 1000000);

      具体的使用就是这两种,记住,js中调用qml和js的文件都不会出现高亮,也不会打点自动识别补全,所以一开始会很容易认为是错误的。具体其他的用法在我刚才提到的那篇转载的博客中都有。

   


       


        

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭