QML中使用JavaScript

本篇文章主要讨论QML引入JavaScript文件,以及QML与JavaScript之间的关系。

首先在QML文件开头添加如下代码导入JavaScript:

  • 第一种写法,使用qrc路径:
import "qrc:/qml/JavaScript/Application.js" as Application
  • 第二种写法,使用相对目录:
import "../JavaScript/Application.js" as Application

进入之后使用Application就可以调用JavaScript中的代码了。

使用JavaScript时需要注意,JavaScript中定义的全局变量只对当前QML文件有效。也就是说,QML文件A调用JS中的函数并改变了JS中的全局变量,在QML文件B中获取到的全局变量是不会受到影响的。
但是,如果是在QML中定义的变量(即property,并且QML中存放property的对象没有被销毁),则是会被JavaScript函数影响的。因此,如果想在QML文件之间交换数据,可以将变量定义在QML中,然后JS中编写修改变量的函数。

简而言之,JS文件相当于QML之间交互的桥梁,JS中定义的全局变量只相当于当前QML中的临时变量。

猜你喜欢

转载自blog.csdn.net/hccloud/article/details/47425023