vue打包多个html,vue多页面应用打包配置

一直是使用vue官方提供的脚手架工具来做开发单页应用,突发奇想的想做一个多页应用的打包配置,顺便了解一下webpack的使用。花了几天时间搞定之后才发现了这篇文章《进阶| Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇)》。但还是要记录一下自己搭建的过程。代码地址:https://github.com/lzy1043/webpack-multiple-pages。

代码结构

build目录下是webpack的配置文件

src/components目录下是通用的组件

src/views下是应用的页面

bV01fH?w=302&h=394

打包前多页面的目录结构:

bV15eJ?w=270&h=374

打包之后的生成的项目结构:

bV15fg?w=305&h=288

代码里面的ESlint和babel的配置是直接使用的vue-cli中的配置。

配置多入口

1.多页面目录结构

多页应用就代表着需要有多个入口,webpack的entry支持多入口,使用entry的对象语法对每个页面设置入口。类似下面

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue页面应用可以通过webpack的entry配置来实现针对某个页面进行单独打包的功能。 1. 在webpack的entry配置中,为需要单独打包页面设置一个入口文件,例如: ``` module.exports = { entry: { index: './src/pages/index/main.js', about: './src/pages/about/main.js' }, // ... } ``` 2. 在webpack的output配置中,设置打包后的输出文件名,例如: ``` module.exports = { entry: { index: './src/pages/index/main.js', about: './src/pages/about/main.js' }, output: { path: path.resolve(__dirname, './dist'), filename: 'js/[name].js' }, // ... } ``` 其中`[name]`会被替换entry中的键名,即页面名称。 3. 在webpack的plugins配置中,使用`HtmlWebpackPlugin`插件生HTML文件,并指定对应的入口文件,例如: ``` const HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports = { entry: { index: './src/pages/index/main.js', about: './src/pages/about/main.js' }, output: { path: path.resolve(__dirname, './dist'), filename: 'js/[name].js' }, plugins: [ new HtmlWebpackPlugin({ filename: 'index.html', template: './src/pages/index/index.html', chunks: ['index'] }), new HtmlWebpackPlugin({ filename: 'about.html', template: './src/pages/about/about.html', chunks: ['about'] }) ], // ... } ``` 其中`chunks`选项指定需要引入的打包后的js文件,即entry中的键名。 通过以上配置,webpack会针对每个页面单独的打包文件,可以实现针对某个页面进行单独打包的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值