vue 多页面打包配置

因为我们公司的项目是多页面应用,不同于传统单页面应用,一个包就可以了。我们必须要分模块打包,因此特意研究了下webpack,然后整理了一下多页面打包的逻辑。
1.首先,用vue-cli搭好基本的项目结构。
安装vue-cli

npm install --global vue-cli

然后用测试下

vue -V 

在这里插入图片描述
然后生成项目

vue init webpack hndlBuild

在这里插入图片描述
然后这是生成的项目结构
在这里插入图片描述
接下来我们对这个结构进行下调整
2. 项目结构调整
由于每个功能的路由也是单独的,因此我们需要单独的路由文件,在src下创建一个页面配置
在这里插入图片描述
index.js

// 页面路径配置
import router from '@/page1/router' // 你的页面文件路径
export default {
  router
}

你也可以在其中配置其他参数,
然后对main.js进行修改

import Vue from 'vue'
import App from './App'
import config from './pageConfig' //修改了配置的引入方法

Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
  el: '#app',
  router: config.router, // 这里配置路由
  components: { App },
  template: '<App/>'
})

然后就是创建对应的页面路径了
在这里插入图片描述
接下来就是正常的开发和打包流程
因为webpack打包是按需引入的 所以我们可以在外部直接开发组件,然后多页面引入,这样可以避免把大量时间浪费在同一件事情上。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Vue 2.0中,我们可以通过配置多个入口文件并使用不同的页面模板来实现多页面的分开打包。下面是一个简单的示例: 首先,在项目的根目录下创建一个名为"pages"的文件夹,用于存放多个页面的相关文件。 然后,在项目的根目录下找到"vue.config.js"文件(如果有则需要手动创建),并添加以下配置: ```javascript module.exports = { pages: { app1: { entry: 'pages/app1/main.js', template: 'pages/app1/index.html', filename: 'app1.html' }, app2: { entry: 'pages/app2/main.js', template: 'pages/app2/index.html', filename: 'app2.html' } } } ``` 在上面的配置中,我们定义了两个页面:app1和app2。每个页面都有对应的入口文件和模板文件。 接下来,我们需要创建对应的入口文件和模板文件。以app1为例,在"pages"文件夹下创建一个名为"app1"的文件夹,并在该文件夹下创建一个名为"main.js"的文件作为入口文件。在"pages/app1"文件夹下还需要创建一个名为"index.html"的文件作为模板文件。 在入口文件"main.js"中,我们需要引入Vue和根组件,并创建一个根实例: ```javascript import Vue from 'vue' import App from './App.vue' new Vue({ render: h => h(App) }).$mount('#app') ``` 在模板文件"index.html"中,我们可以编写对应页面的HTML结构,然后在其中动态引入打包后的脚本文件。 最后,我们可以使用命令行运行以下命令来进行打包: ``` npm run build ``` 执行上述命令后,Vue会自动根据配置将每个页面的入口文件打包成对应的HTML和JS文件。在打包完成后,可以在"dist"文件夹下找到生成的多个页面文件。 通过上述配置和步骤,我们可以实现Vue 2.0的多页面分开打包。 ### 回答2: 在Vue2.0中,如果要进行多页面开发,并且希望进行分开打包,需要进行如下的配置和命令操作: 首先,在项目的根目录下新建一个`pages`文件夹,用于存放多个页面的代码。每个页面都应该有自己独立的目录,并在目录中创建一个`main.js`文件作为入口文件。 接下来,需要修改`webpack.config.js`文件,使其支持多页面打包。具体配置如下: ```javascript const HtmlWebpackPlugin = require('html-webpack-plugin'); const path = require('path'); // 需要打包页面数组 const pages = [ { name: 'page1', title: '页面1' }, { name: 'page2', title: '页面2' }, // ... ]; module.exports = { // ...其他配置 entry: {}, plugins: [], // ...其他配置 // 添加多页面的入口和插件配置 pages.forEach(page => { module.exports.entry[page.name] = path.resolve(__dirname, `./pages/${page.name}/main.js`); module.exports.plugins.push(new HtmlWebpackPlugin({ filename: `${page.name}.html`, template: path.resolve(__dirname, './index.html'), title: page.title, chunks: [page.name], })); }), }; ``` 上述配置中,我们通过`entry`属性指定了多个入口文件,通过`plugins`属性添加了多个HtmlWebpackPlugin插件,用于生成多个html文件。 然后,需要修改`index.html`文件,将原来的`<script src="/dist/build.js"></script>`替换为`<script src="/dist/[page.name].js"></script>`。 最后,在命令行运行`npm run build`命令进行打包即可。打包完成后,`dist`目录下会生成多个js文件和对应的html文件,每个页面都有独立的打包输出。 总结起来,实现Vue2.0多页面分开打包的命令,主要包括以下几个步骤:新建多个页面目录,修改webpack配置,修改index.html文件,运行打包命令。 ### 回答3: 在Vue 2.0中,如果我们需要进行多页面开发,可以使用webpack的配置来进行分开打包。 第一步,我们需要在webpack中配置多入口。我们可以在webpack的配置文件中的entry中添加多个入口文件,每个入口文件对应一个页面。例如: ``` entry: { page1: './src/page1.js', page2: './src/page2.js', }, ``` 这样就配置了两个页面的入口文件。 第二步,我们需要为每个页面配置独立的模板文件。可以在webpack的配置文件中的plugins中添加多个HtmlWebpackPlugin,同时在每个HtmlWebpackPlugin中指定对应的模板文件和生成的html文件名。例如: ``` plugins: [ new HtmlWebpackPlugin({ template: './src/page1.html', filename: 'page1.html', chunks: ['page1'] }), new HtmlWebpackPlugin({ template: './src/page2.html', filename: 'page2.html', chunks: ['page2'] }), ], ``` 这样就配置了两个页面的模板文件和对应的html文件。 第三步,我们可以通过npm脚本进行打包。在package.json文件中的script中添加多个打包命令,每个命令对应一个页面打包。例如: ``` "scripts": { "build:page1": "webpack --config webpack.conf.js --progress --colors --mode=production --env.page=page1", "build:page2": "webpack --config webpack.conf.js --progress --colors --mode=production --env.page=page2" } ``` 这样就配置了两个打包命令,分别对应两个页面打包。 最后,我们可以通过运行对应的打包命令来分别打包每个页面。例如,运行`npm run build:page1`命令可以对第一个页面进行打包,运行`npm run build:page2`命令可以对第二个页面进行打包打包完成后,每个页面打包文件会在指定的输出目录中生成。 以上就是Vue 2.0中多页面分开打包的命令配置过程。通过这种方式,我们可以方便地对多个页面进行独立的打包和部署。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值