详细问题描述
HBuilderX创建的 uniapp项目,在 pages.json 里使用条件编译,由于条件语句显然会破坏普通的 json 格式,造成 pages.json 编译失败,无法显示页面。
[内容]
重现步骤
在 pages.json 中使用条件编译,例如
"tabBar": {
"list": [{
"text": "Portal",
"pagePath": "pages/Portal",
// #ifdef H5
"iconPath": "./static/portal.svg"
// #endif
// #ifndef H5
"iconPath": "./static/portal.png"
// #endif
}]
}
[结果]
如果已经打开了 hbuilder 并且成功编译过,就显示编译错误,说期待 } 但看到了 iconPath。显然是由于第一个条件下,没有用逗号结尾;但用逗号结尾是更加错误的。但页面还是可以打开的。
如果尚未打开 hbuilder,那么第一次打开,在菜单里 “运行到内置浏览器”时,完全无法编译,完全无法显示页面。
IDE运行环境说明
[IDE版本号] HBuilderX 2.4.6.20191210
[mac版本号] macOS Catalina 10.15
uni-app运行环境说明
[运行端是h5或app或某个小程序?] h5
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试] HBuilderX创建的 uniapp 应用
[编译模式是老模板模式还是新的自定义组件模式?] 不知道
yuanjin (作者)
用这种写法:
2020-05-06 11:30