emosheeep / vite-plugin-virtual-mpa

Out-of-box MPA plugin for Vite, generate multiple entries using only one template.
https://stackblitz.com/~/github.com/emosheeep/vite-plugin-virtual-mpa
MIT License
113 stars 15 forks source link

Windows上当`base`为`''`或`'./'`时,打包后HTML里的资源路径会包含项目所在的目录 #43

Closed Xli33 closed 1 year ago

Xli33 commented 1 year ago

可以在Windows上使用这个demo复现,只用了vite和插件

因为不能限制base为固定的名字,所以想着用 '' / ./ 了,开发时没问题,然鹅打包后(⊙o⊙)…

没用插件时的配置

export default {
  base: '', // './'也一样
};

打包后资源的路径是以 ./ 开头的,这时是对的

image

但是使用了插件后,生成的路径就会包含项目所在的目录路径

export default {
  base: '',
  plugins: [
    createMpaPlugin({
      pages: [
        {
          name: 'index'
        }
      ]
    }),
  ],
};

image

也下载了仓库里的example试过,但只要把base改成 '' 或 './' 后结果都是一样了,甚至文件夹名字太长还会被截断 (ಥ﹏ಥ)

emosheeep commented 1 year ago

可以看看你的配置吗

Xli33 commented 1 year ago

可以看看你的配置吗

不好意思,忘了说上面的截图就是在本机上用那个demo弄的,配置是这样的

import { createMpaPlugin } from 'vite-plugin-virtual-mpa';

export default {
  base: '',
  plugins: [
    createMpaPlugin({
      pages: [
        {
          name: 'index'
        }
      ]
    }),
  ],
};
emosheeep commented 1 year ago

我有空借个windows电脑看下,现在在上班没法看,你如果着急或者有空,可以提个PR,等我的话,我是不能保证什么时候有时间的

Xli33 commented 1 year ago

我有空借个windows电脑看下,现在在上班没法看,你如果着急或者有空,可以提个PR,等我的话,我是不能保证什么时候有时间的

么事,这个不急,后面先用其他方式曲线救国了 P.S 抱歉打扰工作、、(。・_・。)ノ

emosheeep commented 1 year ago

我今天借到了一台 windows 看了下这个,我感觉可能是 vite 的问题,我在 windows 系统中复现了一个最小 demo,但同样的 demo 在 MacOS 上一切正常,所以我去提了一个 https://github.com/vitejs/vite/issues/13406 ,等等后续再看。

Xli33 commented 1 year ago

我今天借到了一台 windows 看了下这个,我感觉可能是 vite 的问题,我在 windows 系统中复现了一个最小 demo,但同样的 demo 在 MacOS 上一切正常,所以我去提了一个 vitejs/vite#13406 ,等等后续再看。

好哒,大佬辛苦了(・ω・)ノ