2

我使用 Vue CLI 和 Vue 2 构建了一个多页面应用程序,vue.config.js如下所示:

pages: {
    index: {
      entry: './src/pages/index/main.js',
      template: 'public/index.html',
      title: 'index page',
      chunks: ['chunk-vendors', 'chunk-common', 'index']
    },
    admin: {
      entry: './src/pages/admin/main.js',
      template: 'public/index.html',
      title: 'admin page',
      chunks: ['chunk-vendors', 'chunk-common', 'admin']
    }
},
...

但是如何使用 Vite 和 Vue 3 构建多页面应用程序?

在此处输入图像描述

这是我的目录结构。我像这样编辑了 vite.config.js:

import vue from '@vitejs/plugin-vue'
const { resolve } = require('path')
/**
 * @type {import('vite').UserConfig}
 */
export default {
  plugins: [vue()],
  build:{
    rollupOptions:{
      input:{
        main:resolve(__dirname,'index.html'),
        admin:resolve(__dirname,'src/admin/index.html')
      }
    }
  }
}

但是当我构建时它返回错误并且我无法通过 localhost:3000/admin/index.html 打开管理页面。

4

1 回答 1

5

index.html您可以为每个入口点创建两个单独的。例如,<projectRoot>/index.htmlimports <projectRoot>/main.js,而嵌套的<projectRoot>/admin/index.htmlimports <projectRoot>/admin/main.js

考虑以下目录结构:

|-package.json
|-vite.config.js
|-index.html
|-main.js
|-admin/
|---index.html
|---main.js

您将使用此配置来创建多页应用程序

// vite.config.js
const { resolve } = require('path')

module.exports = {
  build: {
    rollupOptions: {
      input: {
        main: resolve(__dirname, 'index.html'),
        admin: resolve(__dirname, 'admin/index.html')
      }
    }
  }
}
于 2021-01-25T11:41:14.027 回答