Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 检查QML文件是否具有有效语法_Qt_Qml_Evaluation - Fatal编程技术网

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

Qt 检查QML文件是否具有有效语法,qt,qml,evaluation,Qt,Qml,Evaluation,我将Qt5.6与QML一起使用。我通过网络接收QML内容,但在使用它之前,我想验证QML语法是否确实有效。我看到有一个javascript计算器,但对于特定于QML的代码没有类似的计算器 有人做过类似的事情吗?将您的QML内容加载到一个文件中。听信号,并得到任何最终的错误。它返回一个对象列表,您可以从中验证发生了什么类型的错误 编辑:正如评论中指出的: 确保您信任该QML的源。它是可执行代码,可以执行应用程序在其他情况下可以执行的任何操作。至少使用SSL连接并验证远程服务器的证书 我没想到!谢

我将Qt5.6与QML一起使用。我通过网络接收QML内容,但在使用它之前,我想验证QML语法是否确实有效。我看到有一个javascript计算器,但对于特定于QML的代码没有类似的计算器


有人做过类似的事情吗?

将您的QML内容加载到一个文件中。听信号,并得到任何最终的错误。它返回一个对象列表,您可以从中验证发生了什么类型的错误


编辑:正如评论中指出的:


确保您信任该QML的源。它是可执行代码,可以执行应用程序在其他情况下可以执行的任何操作。至少使用SSL连接并验证远程服务器的证书


我没想到!谢谢,似乎从未调用错误状态。我尝试设置标志QQmlComponent::CompliationMode::PreferSynchronous,因此它可能实际上是不同步的(我现在没有通过网络加载qml,因此有关PreferSynchronous不适用于网络qml的文档不适用),如果出现语法错误和错误()和errorString()不报告任何错误。请确保您信任该QML的源。它是可执行代码,可以执行应用程序在其他情况下可以执行的任何操作。至少使用SSL连接并验证远程证书。@KubaOber这是一个可信的源(me),但这是一个很好的警告。