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")

});

相关文章
相关标签/搜索