uni-app 自定义条件编译问题:两个自定义条件使用 || 时,只有 || 前条件有效
uni-app 自定义条件编译问题:两个自定义条件使用 || 时,只有 || 前条件有效
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Mac | 11.2.3 | HBuilderX |
操作步骤:
必现
预期结果:
在MP-ALIPAY-TEST时 或 MP-WEIXIN-TEST时,都有baseUrl
实际结果:
只有是MP-ALIPAY-TEST时,有baseUrl
bug描述:
// #ifdef MP-ALIPAY-TEST || MP-WEIXIN-TEST
conts baseUrl = "https://..."
// #endif
只有 || 前的有效,即只有是MP-ALIPAY-TEST时,有baseUrl; 是MP-WEIXIN-TEST时没有baseUrl
更多关于uni-app 自定义条件编译问题:两个自定义条件使用 || 时,只有 || 前条件有效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
我也遇到过,需要把自定义变量都列出来,如你这个例子需要这样配置
“uni-app”: {
“scripts”: {
“alitest”: {
“title”: “ali test”,
“env”: {
“UNI_PLATFORM”: “mp-alipay”
},
“define”: {
“MP-ALIPAY-TEST”: true,
“MP-WEIXIN-TEST”: false
}
},
“wxtest”: {
“title”: “wx test”,
“env”: {
“UNI_PLATFORM”: “mp-weixin”
},
“define”: {
“MP-ALIPAY-TEST”: false,
“MP-WEIXIN-TEST”: true
}
}
}
}
更多关于uni-app 自定义条件编译问题:两个自定义条件使用 || 时,只有 || 前条件有效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在uni-app的条件编译中,使用逻辑或(||)操作符时,确实需要注意语法格式。条件编译不支持直接使用JavaScript中的逻辑运算符,而是需要分别声明每个条件。
正确的写法应该是:
// #ifdef MP-ALIPAY-TEST || MP-WEIXIN-TEST
const baseUrl = "https://..."
// #endif
或者使用多个条件编译块:
// #ifdef MP-ALIPAY-TEST
const baseUrl = "https://..."
// #endif
// #ifdef MP-WEIXIN-TEST
const baseUrl = "https://..."
// #endif

