Skip to content

Instantly share code, notes, and snippets.

@xuxucode
Last active November 11, 2024 16:56
Show Gist options
  • Save xuxucode/c917fd9d260fc71b54fac9b14c11f4f0 to your computer and use it in GitHub Desktop.
Save xuxucode/c917fd9d260fc71b54fac9b14c11f4f0 to your computer and use it in GitHub Desktop.
微信小程序导入缺失的 `core-js` 模块

微信小程序已经内置了部分 core-js polyfill,但不全面。参考:

需要手动打包缺失的模块,并导入项目。

第一步: 以打包 URLURLSearchParams 为例,运行此脚本,最后生成文件 corejs-url.js (139 KB)

参考文档:https://github.com/zloirock/core-js/tree/master/packages/core-js-builder

import builder from 'core-js-builder'

await builder({
  // 所有需要的模块('core-js/actual/url' 包含 URL 和 URLSearchParams:https://github.com/zloirock/core-js#url-and-urlsearchparams)
  modules: ['core-js/actual/url'],
  summary: {
    console: { size: true, modules: true },
    comment: { size: true, modules: true },
  },
  format: 'bundle',
  // 打包后的目标文件名
  filename: './corejs-url.js',
})

第二步:把 corejs-url.js 复制到小程序项目里,比如:

├── app.json
├── app.ts
├── lib
│   └── corejs-url.js
├── pages
└── utils
    └── util.ts

第三步:导入 corejs-url.js

// 在 app.ts 文件
import './lib/corejs-url.js'

备注

  • 小程序开发工具(我的版本是 1.06.2307260 darwin)已经实现 globalThis.URLglobalThis.SearchParamscorejs-url仅在真机上有效
@xuxucode
Copy link
Author

👍👍👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment