代码拉取完成,页面将自动刷新
var path = require("path");
var webpack = require("webpack");
var CopyWebpackPlugin = require('copy-webpack-plugin');
var publicPathSrc = '/iot-meeting';
module.exports = {
//入口
entry: ["whatwg-fetch", "./src/App.jsx"],
target: 'web',
//输出目录
output: {
path: path.resolve(__dirname, "." + publicPathSrc),
filename: 'assets/js/bundle.js',
publicPath: publicPathSrc
},
//注入环境变量,可以直接通过process.env.NODE_ENV获取
plugins: [
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('dev'),
'HOST_URL': JSON.stringify('http://10.0.0.71:10081'),
'IMAGE_PRIFIX': JSON.stringify('http://202.91.248.189:82')
}
}),
// new webpack.optimize.CommonsChunkPlugin("vendor", "vendor.bundle.js")
//new DashboardPlugin(dashboard.setData)
// new webpack.optimize.UglifyJsPlugin({
// mangle: false,
// compress: {
// warnings: false
// }
// })
new CopyWebpackPlugin([{
from: './assets',
to: './assets'
}, {
from: './index.html',
to: './index.html'
}])
],
//loader配置
module: {
loaders: [
{
test: /\.less$/,
loader: "style!css!less"
},
{
test: /\.css$/,
loader: "style!css"
},
{
test: /\.scss$/,
loaders: ['style', 'css', 'sass']
},
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel', // 'babel-loader' is also a legal name to reference
query: {
presets: ['react', 'es2015']
}
},
{
test: /\.js$/,
loaders: ['babel'],
exclude: /node_modules/,
include: __dirname
},
{test: /\.(png|jpg)$/, loader: 'url-loader?limit=8192'}
]
},
//第三方js库引用
externals: {},
//配置目录结构,添加目录接口import时只需要文件名,不需要目录名。
resolve: {
extensions: ['', '.js', '.jsx']
},
devServer: {
port: 8000,
host: 'changru.com',
hot: true,
quiet: true,
disableHostCheck: true,
historyApiFallback: {
index: 'index.html'
}
}
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。