请教个问题,在creator中,如果我不同的环境(开发,生产)有一些不同的参数(比如服务器地址),这些配置有没有好的lib来管理,打包时候,不同环境打入不同的参数
为什么沉下去了呢?
同问,请问楼主现在是如何解决的呢?
Creator 中的参数可以帮助你设置这些参数,比如:
window.config = {};
// debug 环境下
if (CC_DEBUG) {
config.debugSetting = ...
}
// release 环境
else {
config.xxx = ...
}
保存脚本时,ccc编译出错,并没有这个变量 
ReferenceError: CC_DEBUG is not defined
目前没有 CC_DEBUG @panda 只有一个 CC_DEV,不过这个宏的值是等于 CC_EDITOR or CC_TEST。
以后我们可能会添加 CC_DEBUG, 至于时间具体要问 @jare 了
目前 CC_DEV 在编辑器或预览时会为 true。使用 CC_DEV 来标识生产环境的话,满足大部分需求但是构建版本是否 debug mode 无法以此区分。
如果这样修改好吗?
构建版本的 debug 模式下,同样使 CC_DEV 为 true
增加 CC_BUILD 和 CC_PREVIEW,用来表示构建版和预览版
这样一来,代表不同平台的宏一共如下
编辑器: CC_EDITOR
预览:CC_PREVIEW
构建调试:CC_BUILD && CC_DEV
构建发行:CC_BUILD && !CC_DEV
编辑器 + 预览:CC_EDITOR || CC_PREVIEW
编辑器 + 预览 + 构建调试:CC_DEV
嗯,可以,基本满足需求,
请问什么时候添加呢?
我们内部定案后添加
为什么我测试着creator1.4.1 CC_DEV在编辑器时候是true,在启动模拟器时候是false, CC_BUILD、CC_PREVIEW不存在, CC_EDITOR和CC_DEV一样
CC_BUILD、CC_PREVIEW 又还没做,有做的话这里会更新的
看上面回复的,我以为已经做了,那为什么CC_DEV在编辑器时候是true,在启动模拟器时候是false啊?
这是内部实现上的 bug
这个功能是还没实现吗?
@jare
这些是构建后的代码
var n="undefined"==typeof window?global:window;
function r(t,e){
void 0===n[t]&&(n[t]=e)
}
function o(t){
return"object"==typeof n[t]
}
r("CC_TEST",o("tap")||o("QUnit")),
r("CC_EDITOR",o("Editor")&&o("process")&&"electron"in process.versions),
r("CC_PREVIEW",!0),
r("CC_DEV",!0),
r("CC_DEBUG",!0),
r("CC_JSB",o("jsb")),
r("CC_BUILD",!1),
r("CC_WECHATGAME",o("wx")&&wx.getSystemInfoSync),
r("CC_QQPLAY",o("bk")),
r("CC_SUPPORT_JIT",!0);
n.CocosEngine=cc.ENGINE_VERSION="1.10.0-rc.1"}),{}]},{},[226]);