自动删除未使用的 QML 导入



我正在使用一个相当大的Qt/QML代码库,我正在寻找检测和删除所有未使用的QML导入的方法。如何做到这一点?有没有办法自动化它?

我相信删除未使用的QML导入是保持代码库干净的好方法。此外,根据QML编码指南,它将提高加载性能:

导入在 QML 中需要时间。如果您正在为系统规格较低的设备进行开发,那么您将需要尽可能多地进行优化。在这种情况下,请尝试尽量减少在 QML 文件中使用的导入次数。

将近两年后,我找到了一种传统的方法,由Qt通过他们的工具qmlLint提供:

您现在可以按类别禁用警告,例如通过 默认 QMLLINT 将通知您有关未使用的导入:

import QtQuick
import QtQuick3D // Info: DEM.qml:2:1: Unused
import at DEM.qml:2:1
Text {
id: textElement
text: "Hello world!"
anchors.centerIn: parent
}

如果您愿意,您现在可以通过传递来抑制此信息 --未使用的导入禁用。或者,您可以使用 --未使用的导入警告将此信息性消息转换为完整的警告。在那 在这种情况下,与所有警告一样,未使用的导入警告将使 qmllint 返回退出代码 1 ;这将导致任何 CI 失败 或使用该工具的预提交钩子。查看 qmllint 的输出 --帮助获取警告类别的完整列表。

来源 : https://www.qt.io/blog/whats-new-in-qml-tooling-in-qt-6.2

您可以解析每个 QML 文件并在代码中搜索 QML 依赖项,然后删除winqtqmldeploy复制的所有其他依赖项。

相关内容

  • 没有找到相关文章

最新更新