鍍金池/ 問答/Android  HTML/ webpeack配置的全局變量為undefined?

webpeack配置的全局變量為undefined?

//webpack 配置如下:
if(env.production) {
    plugins.push(
      new MiniCssExtractPlugin({
        filename: path.posix.join(__dirname, '../dist/style.css')
      }),
      new webpack.DefinePlugin({
        'process.env': {
          NODE_ENV: '"production"'
        }
      })
    )
  }
  console.log('值='+process.env.NODE_ENV)

圖片描述

圖片描述
通過DefinePlugin賦值,值顯示為undefined,不知道是出了什么原因?

回答
編輯回答
落殤

首先,請仔細(xì)閱讀 DefinePlugin 的文檔。

現(xiàn)在我假設(shè)你讀過了。DefinePlugin 用來替換代碼中的常量,比如代碼中有 const a = SOME_CONST,你的配置文件里有 DefinePlugin({ SOME_CONST: '"hello"'}),那么代碼就會被替換成 const a = "hello",所以引號在這里非常重要。

所以就可以知道,你這種直接在配置文件里輸出定義的做法是多么莫名其妙,一看就沒看文檔。

至于怎么處理錯誤,這個要看你代碼里怎么使用。建議你找到對應(yīng)行,然后根據(jù)你的代碼調(diào)整配置。

2017年11月4日 06:18
編輯回答
久愛她
console.log('值='+process.env.NODE_ENV)

上面這坨代碼放到你的業(yè)務(wù)代碼中

2017年5月9日 21:37