babel-preset-mp

微信小程序 babel 构建环境预设

Usage no npm install needed!

<script type="module">
  import babelPresetMp from 'https://cdn.skypack.dev/babel-preset-mp';
</script>

README

babel-preset-miniprogram

微信小程序 babel 构建环境预设

官方repo地址,该repo是官方包的修复版本。

安装

npm install --save-dev babel-preset-mp

使用

// babel.config.js
module.exports = {
  presets: [
    [
      'babel-preset-miniprogram',
      {
        wechatLibVersion: '2.14.0', // 指定小程序最低基础库版本
        useBuiltIns: 'usage', // 打入 Polyfill
        modules: 'cjs', // 将代码转义为 commonjs
      },
    ],
  ],
};

配置项

wechatLibVersion: string

指定构建小程序的目标最低基础库版本,可以在 小程序管理页 【设置】-【基本设置】-【基础库最低版本设置】中设置你的小程序最低版本

其余配置项可直接使用 @babel/preset-env配置项

实现

由于小程序基础库版本会与小程序运行环境版本绑定,因此特定小程序基础库可能的运行环境是确定的。 该预设便是利用该信息,只将运行环境必要的转义和 Polyfill 设置给 @babel/preset-env,从而尽可能减少编译处理和小程序代码体积。

另外由于小程序基础库本身自带了一个 Polyfill,该预设也会避免打入不必要的 Polyfill。