检查QML文件是否具有有效语法

时间:2016-05-27 13:01:44

标签: qt qml evaluation

我正在使用Qt 5.6和QML。我通过网络接收QML内容,但在使用它之前,我想验证QML语法实际上是否有效。我看到有一个javascript评估器,但没有类似的QML特定代码。

有人做过类似的事吗?

1 个答案:

答案 0 :(得分:2)

使用QQmlComponent将您的QML内容加载到QQmlComponent::loadUrl()。收听QQmlComponent::statusChanged()信号,并通过QQmlComponent::errors()获取任何错误。它返回QQmlError个对象的列表,您可以从中验证发生了哪种错误。

编辑:正如Kuba Ober在评论中指出的那样:

  

确保您信任该QML的来源。它是可执行代码,可以执行您的应用程序可以执行的任何操作。至少使用SSL连接并验证远程证书。