Конфиги для webpack
This commit is contained in:
60
build/webpack.base.config.js
Normal file
60
build/webpack.base.config.js
Normal file
@@ -0,0 +1,60 @@
|
||||
let path = require("path");
|
||||
let webpack = require("webpack");
|
||||
const VueLoaderPlugin = require('vue-loader/lib/plugin');
|
||||
|
||||
module.exports = {
|
||||
entry: ["./client/main.js"],
|
||||
output: {
|
||||
path: path.resolve(__dirname, "..", "server", "public"),
|
||||
publicPath: "/",
|
||||
filename: "[name].js",
|
||||
chunkFilename: "[chunkhash].js"
|
||||
},
|
||||
|
||||
module: {
|
||||
rules: [
|
||||
// это будет применяться к файлам `.js`
|
||||
// А ТАКЖЕ к секциям `<script>` внутри файлов `.vue`
|
||||
{
|
||||
test: /\.js$/,
|
||||
loader: 'babel-loader'
|
||||
},
|
||||
// это будет применяться к файлам `.css`
|
||||
// А ТАКЖЕ к секциям `<style>` внутри файлов `.vue`
|
||||
{
|
||||
test: /\.css$/,
|
||||
use: [
|
||||
'vue-style-loader',
|
||||
'css-loader'
|
||||
]
|
||||
},
|
||||
{
|
||||
test: /\.gif$/,
|
||||
loader: "url-loader",
|
||||
options: {
|
||||
name: "images/[name]-[hash:6].[ext]",
|
||||
limit: 10000
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.png$/,
|
||||
loader: "url-loader",
|
||||
options: {
|
||||
name: "images/[name]-[hash:6].[ext]",
|
||||
limit: 10000
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.jpg$/,
|
||||
loader: "file-loader",
|
||||
options: {
|
||||
name: "images/[name]-[hash:6].[ext]"
|
||||
}
|
||||
},
|
||||
]
|
||||
},
|
||||
|
||||
plugins: [
|
||||
new VueLoaderPlugin()
|
||||
]
|
||||
};
|
||||
26
build/webpack.dev.config.js
Normal file
26
build/webpack.dev.config.js
Normal file
@@ -0,0 +1,26 @@
|
||||
let path = require("path");
|
||||
let webpack = require("webpack");
|
||||
|
||||
let merge = require("webpack-merge");
|
||||
let baseWpConfig = require("./webpack.base.config");
|
||||
|
||||
baseWpConfig.entry.unshift("webpack-hot-middleware/client");
|
||||
|
||||
module.exports = merge(baseWpConfig, {
|
||||
mode: 'none',
|
||||
devtool: "#inline-source-map",
|
||||
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
test: /\.vue$/,
|
||||
loader: "vue-loader"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
plugins: [
|
||||
new webpack.HotModuleReplacementPlugin(),
|
||||
new webpack.NoEmitOnErrorsPlugin()
|
||||
]
|
||||
});
|
||||
17
build/webpack.prod.config.js
Normal file
17
build/webpack.prod.config.js
Normal file
@@ -0,0 +1,17 @@
|
||||
let path = require("path");
|
||||
let webpack = require("webpack");
|
||||
|
||||
let merge = require("webpack-merge");
|
||||
let baseWpConfig = require("./webpack.base.config");
|
||||
|
||||
module.exports = merge(baseWpConfig, {
|
||||
mode: 'production',
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
test: /\.vue$/,
|
||||
loader: "vue-loader",
|
||||
}
|
||||
]
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user