Qt 5.10 QML 文件 error: Expected token ";" 问题
环境 Windows 7 x64 ,Qt 5.10 ----
在使用 Qt 编写 QML 程序的时候,遇到了下图中的问题
QML 项目打开的时候,问题栏中会出现很多这种错误提示,但是程序编译、运行都没有问题,只要在文件中任何位置按下空格,然后保存一下,这个界面上所有的这种问题就消失了;但是,当再次打开这个工程、或者重启 Qt IDE 之后,这个问题还是会出现,让人很不开心~
在 QTCN 上提问之后,有网友觉得是编码格式问题,之后,我就在 UTF-8 加不加 BOM (Byte Order Mark)的问题上百度了一段时间,结果是, 在Windows 上,加 BOM 保平安, Linux 上,不要加!
如果你也出现了这个问题,可以尝试以下解决办法:
1. Qt ->工具 -> 选项 -> 文本编辑器 ->文件编码
修改默认编码为 UTF-8(也许其他的也可以,有时间可以试试看),UTF-8 BOM 修改为 如果是 UTF-8 则添加(是不是如果改成 GB2312就不用加这个?);
2. 使用 NotePad、EditPlus等轻量级编译器打开已存在项目的所有 QML 文件
格式,修改格式为 使用 UTF-8 编码(不同的编译器对加 BOM 称呼不一样,总之就是把文件改成 UTF-8 BOM就行了),然后看右下角,文件格式变为 UTF-8 BOM 就行,然后保存退出,问题就解决了!
注意,上述 1 设置完成之后,如果刚修改了文件编码配置,没有重启,新添加到工程的 QML 文件还是不加 BOM 的,但是只要对这个文件进行一次编辑、修改(任何修改都可以,加个空格都行(* ̄︶ ̄)),然后保存,文件格式就会加上 BOM 了!
遇到了,刚好发现了这个方法,记一下,希望对诸位有用~