uni-app icon indicating copy to clipboard operation
uni-app copied to clipboard

希望 @dcloudio/vite-plugin-uni 中 viteLegacyOptions 对非 H5 平台也生效

Open ModyQyW opened this issue 3 years ago • 5 comments

新功能描述

希望 @dcloudio/vite-plugin-univiteLegacyOptions 对非 H5 平台也生效。

现状及问题

当前只对 H5 平台生效。如果使用了一些较新的 API,在某些平台上就会报错不可用,如 String.prototype.replaceAll

image image

尝试方案

  1. 可以在项目 main.ts 内增加了 core-js 以解决问题,但增加的包体积较大。
// main.ts
import 'core-js/actual';
import { createSSRApp } from 'vue';
...
  1. 参考 @vue/babel-preset-app,手动增加 polyfills,增加的包体积可控且较小,但非常繁琐。
// main.ts
import 'core-js/actual/array/iterator';
import 'core-js/actual/promise';
import 'core-js/actual/object/assign';
import 'core-js/actual/promise/finally';
// import 'core-js/actual/string/replace-all'; // 另外增加需要的 polyfill
import { createSSRApp } from 'vue';
...
  1. 修改 @dcloudio/vite-plugin-uni,去除 && options.platform === 'h5',但是运行会失败。
image

补充信息

ModyQyW avatar Sep 09 '22 07:09 ModyQyW

https://github.com/dcloudio/uni-app/issues/3092

ModyQyW avatar Nov 03 '22 05:11 ModyQyW

关注一下,不知道什么时候可以增强

GrapevineLin avatar Feb 12 '23 02:02 GrapevineLin

最近一样遇到了问题, 低版本ios13的系统直接白屏, 用build.target : 'es6' 解决了语法报错,但是 低版本手机会有很多方法不支持,前面都是真机测试发现了 手动判断 原型函数 进行填充, 后面才了解h5开发都是 语法降级,然后自动 polyfill 不支持的方法.现在只能自己接入bable处理吗?

hootigger avatar Aug 10 '24 16:08 hootigger

https://vitesse-docs.netlify.app/getting-started/deployment#%E5%85%BC%E5%AE%B9%E6%80%A7

ModyQyW avatar Aug 12 '24 01:08 ModyQyW

https://vitesse-docs.netlify.app/getting-started/deployment#%E5%85%BC%E5%AE%B9%E6%80%A7

多谢.

hootigger avatar Aug 12 '24 03:08 hootigger