QML模块在项目中有哪些优势?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QML模块在项目中有哪些优势?相关的知识,希望对你有一定的参考价值。

ASAIK有两种方法可以使用QML创建/导入子文件夹:

  • 用亲戚路径import "myQMLDir/mySubDir"导入
  • 在创建qmldir文件时导入模块import myQMLDir.mySubDir 1.0并将它们添加到QtQuick引擎的导入路径。

第一个似乎更容易做到。第二个允许您对文件进行版本控制或从外部目录导入它们,但是当您在项目中使用它们时它是否有用?

答案

根据我的经验,我总是采用import MyModule 1.0方法来得到以下示例:

  • 可读性:import MyModule 1.0显然比路径导入更简单。示例:import "../../../someDir/nextDir/myModule"
  • 重构:如果您决定将MyModule移动到另一个文件夹结构中,则必须更改使用此导入的所有js / qml文件的导入。你不需要用import MyModule 1.0方法做到这一点。
  • 私有文件:为模块定义qmldir时,可以定义其中包含哪些qml / js文件。使用相对路径导入包含所有qml / js文件。

以上是关于QML模块在项目中有哪些优势?的主要内容,如果未能解决你的问题,请参考以下文章

QML 文件中有很多项目的 Component.onCompleted 的顺序是啥?

错误:QT 中的未知模块:qml quick - Qt Creator

26.Qt Quick QML-RotationAnimationPathAnimationSmoothedAnimationBehaviorPauseAnimationSequential(代码片段

qml-自定义quick模块

尝试将外部 QML 模块导入我的项目时出错

QML 错误:qrc:/Main.qml:24 模块“系统”未安装