Слияние кода завершено, страница обновится автоматически
/*
* @Author: Rosen
* @Date: 2016-11-20 13:19:28
* @Last Modified by: Luoyi
* @Last Modified time: 2018-12-04 16:57:45
* 知识点:css单独打包、全局jquery引用、各种loader
*/
var webpack = require('webpack');
var path = require('path');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var HtmlWebpackPlugin = require('html-webpack-plugin');
// 环境变量, dev, (test), online
var WEBPACK_ENV = process.env.WEBPACK_ENV || 'dev';
// webpack config
var config = {
entry:{
'app' : ['./src/index.jsx']
},
externals:{
'$' :'window.jQuery',
'jquery' :'window.jQuery'
},
// path && publickPath
output: {
path : __dirname + '/dist/',
publicPath : WEBPACK_ENV === 'online' ? '//s.evobly.com/admin-fe/dist/' : '/dist/',
filename : 'js/[name].js'
},
resolve: {
alias: {
node_modules : path.join(__dirname, '/node_modules'),
lib : path.join(__dirname, '/src/lib'),
util : path.join(__dirname, '/src/util'),
component : path.join(__dirname, '/src/component'),
service : path.join(__dirname, '/src/service'),
page : path.join(__dirname, '/src/page'),
}
},
module: {
// noParse: [],
loaders: [
{
test: /\.css$/, loader: ExtractTextPlugin.extract({
use: 'css-loader',
fallback : 'style-loader'
})
},
{test: /\.scss$/, loader: ExtractTextPlugin.extract({
use: 'css-loader!sass-loader',
fallback : 'style-loader'
})},
{test: /\.(gif|jpg|png|woff|svg|eot|ttf)\??.*$/, loader: 'url-loader?limit=20000&name=resource/[name].[ext]'},
{test: /\.(string)$/, loader: 'html-loader' },
{
test: /\.js?$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
query: {
presets: ['es2015']
}
},
{
test: /\.jsx?$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
query: {
presets: ['react', 'es2015']
}
},
]
},
plugins: [
// 提出公共部分
new webpack.optimize.CommonsChunkPlugin({
name : 'vendors',
filename : 'js/base.js'
}),
// 单独处理css
new ExtractTextPlugin('css/[name].css'),
// html 加载
new HtmlWebpackPlugin({
filename : 'view/index.html',
title : '商Mall城 后台管理系统',
template : './src/index.html',
favicon : './favicon.ico',
inject : true,
hash : true,
chunks : ['vendors', 'app'],
chunksSortMode : 'dependency',
minify : {
removeComments: true,
collapseWhitespace: false
}
}),
],
devServer: {
port: 8086,
proxy : {
'/manage' : {
target: 'http://admin.evobly.com',
// target: 'http://127.0.0.1:8099',
changeOrigin : true
},
'/user/logout.do' : {
target: 'http://admin.evobly.com',
// target: 'http://127.0.0.1:8099',
changeOrigin : true
}
}
}
};
module.exports = config;
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )