vue前端开发中,通过配置,实现多个入口文件的方法

由于vue为单页面项目,通过控制组件局部渲染,main.js是整个项目唯一的入口,整个项目都在一个index.html外壳中。

若项目过大,会造成单页面负载过重;同时,多页面利于模块独立部署。

要单独将页面当成一个项目入口文件,以下以登陆页面为例:

第一步:在项目public文件夹下创建一个login.html,其实就是将index.html复制一份,将title改一下:
public
    index.html
    login.html
login.html
// 仿照index.html

第二步:在src文件夹下创建一个login文件夹,分别创建login.main.js、login.router.js、login.vue三个文件
src
    login
        login.main.js
        login.router.js
        login.vue
login.main.js
// 仿照main.js
import Vue from 'vue';
import login from './login.vue';
import router from './login.router';
Vue.config.productionTip = false;
new Vue({  
    router,  
    render: h => h(login),
}).$mount('#login');
login.router.js
// 仿照router.js
import Vue from 'vue';
import Router from 'vue-router';
Vue.use(Router);
export default new Router({  
    routes: [
        {
            path: "/",
            name: "login",
            component: () =>
              import(../views/login.vue"),
            meta:{
              title:"登陆"
            }
        },
    ],
});
login.vue
// 仿照App.vue





第三步:配置vue.config.js

在module.exports里加上入口配置:

pages: {//配置多页面入口        
      login: {          
        entry: 'src/login/login.main.js',          
        template: 'public/login.html',        
      },        
      index: {          
        entry: 'src/main.js',          
        template: 'public/index.html',        
      },    
    },
第四步:运行访问:localhost:port/login.html
第五步:打包
第六步:nginx配置
root /usr/local/nginx/html;
location /login {
    index  login.html login.htm;
    try_files $uri $uri/ /login.html;
}
location / {
    index  index.html index.htm;
    try_files $uri $uri/ /index.html;
}

你可能感兴趣的:(vue,前端,多入口,单页面,vue,项目过大,独立部署,nginx配置)