QML 导入版本 2.0 与次要版本,例如2.12 2.15

QML import version 2.0 vs minor versions e.g. 2.12 2.15

我总是对应该使用哪个导入版本感到困惑。

比如我安装了Qt 5.12版本,做import QtQuick 2.0。这是否意味着我获得了 Qt 5.12 附带的最新功能?或者我应该使用 import QtQuick 2.12 来获取最新功能?

是的,对于最新的功能,您应该导入您拥有的给定库的最高版本。例如,这是一个独立测试:

import QtQuick 2.0
import QtQml 2.0
import QtQuick.Window 2.0

Window {
    id: root
    width: 640
    height: 480
    visible: true

    Binding {
        delayed: true
    }
}

运行 这个例子会抛出以下错误并立即退出: qrc:/main.qml:14 "Binding.delayed" is not available in QtQml 2.0.

根据版本说明 in the documentation(“此 属性 是在 Qt 5.8 中引入的”),将 QtQml 导入更改为 2.8 或更高版本将允许它 运行 正确。