webpack.definePlugin

容許你建立一個在編譯時能夠配置的全局常量,這可能會對開發模式和發佈模式容許不一樣的行爲很是有用。好比,你可能會用一個全局的常量來決定log在開發默認觸發而不是在發佈模式。webpack

示例:web

new webpack.DefinePlugin({spa

PRODUCTION:JSON.stringfy(true),插件

VERSION:JSON.stringfy("5fa3b9"),對象

BROWSER_SUPPORTS_HTML5:true,開發

TWO:'1+1',字符串

"tgypeof window":JSON.stringfy('object')string

});io

這個插件直接作的是文本替換,給定的值必須包含字符串自己內的實際引號。一般,有兩種方式來達到這個效果,使用'"production"',或者使用JSON.stringfy('production')。編譯

每一個傳進DefinePlugin的鍵值都是一個標識符或者是多個.鏈接起來的標識符。

若是這個值是一個字符串。它會當作一個代碼片斷來執行

若是這個值不是字符串,它會被轉換成字符串。

若是這個值是一個對象,它全部的key會被一樣的方式定義

若是站在一個key前面加了typeof,它會被定義爲typeof調用

 

 

 

好比:

在webpack.dev.config.js中的配置:(在開發環境使用的配置文件)   webpack.prod.config.js 在生產環境會使用的配置文件

new webpack.DefinePlugin({

  "SERVERCE_URL:JSON.stringfy("172.34.4:8080")

});

相關文章
相關標籤/搜索