QML中能使用什么JS库
JavaScript
是由 ECMAScipt + 宿主环境构成的。
也就是说宿主环境不同,使用 JavaScript
编写 的库一般也是不兼容的。
例如宿主环境有常见的浏览器,有 nodejs,有 IOST 智能合约,当然也有 QML。
一般情况下,浏览器的 JavaScript
库和 nodejs 的 JavaScript
库是不能在 QML 上运行的,因为这些 JavaScript
库依赖浏览器或者 nodejs 的接口,例如 window
,document
,或者 require
等。
如果一个 JavaScript
库并不依赖于具体的宿主环境,那么他就可以同时在 浏览器,nodejs和 QML 上运行。例如 showdownjs/showdown。
还有一些 JavaScript
库,通过移除具体的宿主环境的 API,或者 mock 一个 API,就可以运行在 QML 上。
如何将浏览器或者 nodejs 的 JavaScript
库移植到 QML 中使用?
可以看看这个项目 quickly/quickly 和 trollixx/node.qml