uni-app自定义条件编译平台发行后不生效

uni-app自定义条件编译平台发行后不生效

HBuildX版本为3.2.9.20210927,为什么根据https://uniapp.dcloud.io/collocation/package的配置成功后,示例如下:

package.json中配置:

{
  "uni-app": {
    "scripts": {
      "s-product": {
        "title": "正式版",
        "BROWSER": "Chrome",
        "env": {
          "UNI_PLATFORM": "h5"
        },
        "define": {
          "S-PRODUCT": true
        }
      }
    }
  }
}

在js中

// #ifdef S-PRODUCT  
console.log("This is S-PRODUCT environment");
// #endif

运行后在浏览器中条件编译打印出的语句是正常的,发行后自定义的条件编译却失效了?


### 相关链接:
- [https://ask.dcloud.net.cn/question/132032](https://ask.dcloud.net.cn/question/132032)
- [https://ask.dcloud.net.cn/question/132218](https://ask.dcloud.net.cn/question/132218)
- [https://ask.dcloud.net.cn/question/132271](https://ask.dcloud.net.cn/question/132271)
- [https://ask.dcloud.net.cn/article/39394](https://ask.dcloud.net.cn/article/39394)
- [https://ask.dcloud.net.cn/question/133137](https://ask.dcloud.net.cn/question/133137)

更多关于uni-app自定义条件编译平台发行后不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html

22 回复

同样遇到了这个问题,自定义的编译条件本地启动没有问题,但是发行之后就不管用了

更多关于uni-app自定义条件编译平台发行后不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这是bug吗?我切到alpha版本也是这样

回退到3.1.22版本就可以了

回复 1***@qq.com: 那应该是最新的版本有问题了,官方来人看看啊

经测试,已复现此问题,正在排查。

好的,感谢回复

3.96依旧有问题

3.96依旧有问题

我也也遇到了,发行时候条件编译异常

可以暂时装个旧版本用着,就没问题了

此问题已在 alpha 3.2.10 中修复

在3.3.11版本中又不想了

又不行了

回复 c***@126.com: 发帖子,详细描述一下问题

回复 DCloud_UNI_LXH: maxos下的3.4.15.20220610版本自定义发行无论选择什么环境,编译后都是production

到底哪个版本的hbuilderx可以解决自定义环境变量生效的这个问题,现在不管配置啥环境,只要是发行的不管是自定义发行还是发行到h5环境变量都是production

我现在还用的3.5.3版本,至少这个版本是可以的,其他的就不清楚了

又出问题了,快来人啊

3.8.12 确认也有这个问题,

具体什么表现?就是不生效?

代码里使用 // #ifdef h5-DINGTALK console.log(‘login show’) // #endif 运行不生效

3.96 版本不行 ,下面的写法有问题吗? // #ifdef WEIXIN-TRIAL console.info(’------- 体验版本 --------’) envVersion = ‘trial’ // #endif “uni-app”: { “scripts”: { “mp-weixin-trial”: { “title”: “微信体验环境”, “env”: { “UNI_PLATFORM”: “mp-weixin” }, “define”: { “WEIXIN-TRIAL”: true } } } }

回到顶部