公司的新需求,要将一个vue项目打包,丢进一个app里头,然后用iframe显示出来,结果前期一切正常,因为都是用苹果测的,后来试了一下安卓手机,发现打不开了,经过一番调试,最终发现是使用了module,引入的js文件压根就没有执行,最后经过一番折腾,改了一下打包方式,终于是解决了问题,在此做一下记录o( ̄▽ ̄)ブ

  1. 安装@vitejs/plugin-legacy
npm i @vitejs/plugin-legacy
  1. 配置vite.config.ts文件
import legacy from '@vitejs/plugin-legacy';
plugins: [legacy({
      targets:['defaults','not IE 11']
      }),uni()],
  1. 打包之后打开index.html,按以下步骤改一下
    删除所有<script type="module">的东西,一整块都删了
    删除所有nomodule关键词
    删除id="vite-legacy-entry" 所在script标签里的内容并把data-src改成src

然后就ok了,大功告成!!!

Logo

前往低代码交流专区

更多推荐