Skip to content
This repository has been archived by the owner on Dec 12, 2017. It is now read-only.

为什么在入口文件里访问process.env.NODE_ENV永远都是undefined #118

Closed
Tibbersss opened this issue Nov 27, 2016 · 4 comments
Closed
Labels

Comments

@Tibbersss
Copy link

Tibbersss commented Nov 27, 2016

首先,我的需求是,在构建的时候设置process.env.NODE_ENV为“product”或“dev”,然后在项目中根据NODE_ENV加载不同的项目配置文件,然而在使用中我发现在项目中(入口文件)无法获取NODE_ENV,只有在cooking的配置文件中获取才是有效的
我尝试着分析,发现如下:
在cooking的配置文件中console.log(process)打印出来的是我想要的内容,title为"npm",而在入口文件中console.log(process)打印出来的title是"browser",env是空的

@QingWei-Li
Copy link
Contributor

如果需要设置 env 的话,可以用 definePlugin,当然也可以用 cooking 提供的 env 选项 https://github.com/ElemeFE/cooking/blob/master/CHANGELOG.md#v112-20161002

@Tibbersss
Copy link
Author

这个操作都做了,没有问题,但是问题是在项目入口文件是没办法获取process.env的,在入口文件获取结果都是空的

@QingWei-Li
Copy link
Contributor

额 打印结果还真是空的,但是你直接打印 process.env.NODE_ENV 是可以看到结果的。。。我看了下 process.env.NODE_ENV 是在 webpack 编译的时候就替换内容了

@Tibbersss
Copy link
Author

好的,明白了,谢了兄弟

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants