有些库分为开发版和产品版两套代码
所以使用者在构建的时候需要设置环境变量
NODE_ENV=production
否则构建出的代码比较大,性能也不优
哪里可以设置啊?
cocos creator的bundler(不知道具体用的是什么,比如webpack)肯定有地方设置,但是cc没有暴露出来
有些库分为开发版和产品版两套代码
所以使用者在构建的时候需要设置环境变量
NODE_ENV=production
否则构建出的代码比较大,性能也不优
哪里可以设置啊?
cocos creator的bundler(不知道具体用的是什么,比如webpack)肯定有地方设置,但是cc没有暴露出来
一般人肯定是不知道的,急需开发团队解答……但是不知道@谁
妥妥没有
webpack设置环境变量是基于webpack的打包环境而言的
cocoscreator的打包环境又不是webpack
你就算设置了该值
打包行为也不可能生效
NODE_ENV 所在的脚本设置为插件,然后写一个脚本 在构建完成后动态切换环境
Typescript设置不了插件。。。
不可能没有,我不信有那么多现成的bundler不用,cocos creator团队要自己重新造一个的bundler
同问,请问解决了吗?
目前遇到 npm 的 mobx ,cocos build 出来后出现
index.627e2.js:1 [mobx] you are running a minified build, but 'process.env.NODE_ENV' was not set to 'production' in your bundler. This results in an unnecessarily large and slow bundle
希望有个方法在 build 传递 NODE_ENV,前端包很多使用到的
遇到了同样的问题,不知道 楼主 后来解决了没有?
因为debug绑死了调试日志的输出。如果需要打一个带调试日志输出但是API路径使用release配置的包,要怎么实现?
没法解决设置NODE_ENV,但是可以不显示这个警告,在index.html中的script脚本中加入即可
console.warn = function (oriLogFunc) {
return function () {
const args = Array.prototype.slice.call(arguments);
if(String(args).indexOf('[mobx] you are running a minified build')<0) {
//@ts-ignore
oriLogFunc.call(console, ...arguments);
}
}
}(console.warn);
最好是用脚本打包,然后代码控制插入进去