欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

WebPack配置vue多頁面的技巧

 更新時(shí)間:2018年05月15日 08:53:49   投稿:mrr  
這篇文章主要介紹了WebPack配置vue多頁面的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

WebPack虐我千百遍,我?guī)绯鯌?。一個(gè)項(xiàng)目前臺頁面寫差不多了,webpack幾乎零配置,也算work起來了?,F(xiàn)在需要編寫后臺管理界面,另起一個(gè)單獨(dú)的項(xiàng)目,那是不存在的。于是網(wǎng)上了搜了大把大把的文章,很多都是修改了項(xiàng)目的結(jié)構(gòu),討厭,vue-cli搞的那一套,干嘛要修改來修改去的。像我這種前端小萌新,webpack的配置改著就把前臺部分run不起來了。。。

于是就有了這個(gè)筆記:

先看看項(xiàng)目的結(jié)構(gòu):

├── build
├── config
├── src
│   ├── api
│   ├── assets
│   ├── components
│   ├── pages
│   ├── router
│   ├── utils
│   ├── vuex
│   ├── App.vue
│   ├── main.js
│   ├── admin.js
│   └── Admin.vue
├── static
│   └── images
├── README.md
├── admin.html
├── index.html
├── package.json
└── yarn.lock

我相信這樣的結(jié)構(gòu)大家一定很熟悉,除了 admin.html 和src文件夾下面的 Admin.vue 、 admin.js ,還有一些api,pages,vuex等文件夾,就是最常見的一個(gè)vue-cli初始化的項(xiàng)目結(jié)構(gòu)。

我想要就是新增一個(gè)后臺管理界面的入口admin.html,其他能夠共用的還是共用,進(jìn)入正題:

修改webpack的配置文件

修改 webpack.base.conf.js

打開 ~\build\webpack.base.conf.js ,找到entry,添加多入口:

entry: {
 app: './src/main.js',
 admin: './src/admin.js' //新增
},

這樣運(yùn)行編譯的時(shí)候,每一個(gè)入口都會(huì)對應(yīng)一個(gè)chunk。

run dev配置的修改

打開 ·~\build\webpack.dev.conf.js· ,在plugins下找到 HtmlWebpackPlugin ,在其后面添加對應(yīng)的多頁,并為每個(gè)頁面添加Chunk配置如下:

new HtmlWebpackPlugin({
 filename: 'index.html', //生成的html
 template: 'index.html', //來源html
 inject: true, 
 chunks: ['app']//需要引入的Chunk,不配置就會(huì)引入所有頁面的資源
}),
new HtmlWebpackPlugin({
 filename: 'admin.html',
 template: 'admin.html',
 inject: true,
 chunks: ['admin']
}),

run build配置的修改

修改config/index.js

打開 ~\config\index.js ,找到build下的 index: path.resolve(__dirname, '../dist/index.html') ,在其后添加多頁:

admin: path.resolve(__dirname, '../dist/admin.html'),

修改 webpack.prod.conf.js

打開 ~\build\webpack.prod.conf.js ,在plugins下找到 HtmlWebpackPlugin ,在其后面添加對應(yīng)的多頁,并為每個(gè)頁面添加Chunk配置:

new HtmlWebpackPlugin({
 filename: config.build.index,
 template: 'index.html',
 inject: true,
 minify: {
 removeComments: true,
 collapseWhitespace: true,
 removeAttributeQuotes: true
 // more options:
 // https://github.com/kangax/html-minifier#options-quick-reference
 },
 // necessary to consistently work with multiple chunks via CommonsChunkPlugin
 chunksSortMode: 'dependency',
 chunks: ['manifest', 'vendor', 'app']
}),
new HtmlWebpackPlugin({
 filename: config.build.admin,
 template: 'admin.html',
 inject: true,
 minify: {
 removeComments: true,
 collapseWhitespace: true,
 removeAttributeQuotes: true
 },
 chunksSortMode: 'dependency',
 chunks: ['manifest', 'vendor', 'admin']
}),

End

恩,沒有了,就不修改什么項(xiàng)目結(jié)構(gòu)了,過程越復(fù)雜越容易出錯(cuò)。上面webpack的配置簡單能看懂。

相關(guān)文章

最新評論