babel-preset-taro
> TODO: description
Last updated 4 years ago by defaultlee .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install babel-preset-taro 
SYNC missed versions from official npm registry.

title: Babel 配置

Taro 项目的 Babel 配置位于根目录的 babel.config.js 文件中,里面默认添加了一个 preset:babel-preset-taro,它会根据项目的技术栈添加一些常用的 presetsplugins

module.exports = {
  presets: [
    ['taro', {/** 配置项 */}]
  ]
}

开发者可以修改 babel.config.js,修改 babel-preset-taro 的配置项,或添加自己想要的 presetsplugins

babel-preset-taro

babel-preset-taro 会根据当前项目的技术栈,选择性地使用以下的 presetsplugins

1. 通用

presets
  • @babel/preset-env
  • @babel/preset-typescript(TypeScript 环境)
plugins
  • @babel/plugin-transform-runtime
  • @babel/plugin-proposal-decorators
  • @babel/plugin-proposal-class-properties
  • babel-plugin-dynamic-import-node(小程序环境)

2. React

presets
  • @babel/preset-react
plugins
  • react-refresh/babel

3. Vue

presetes
  • @vue/babel-preset-jsx

4. Vue3

plugins
  • @vue/babel-plugin-jsx

以下将详细介绍 babel-preset-taro 的配置项。

reactJsxRuntime

:::note 只在使用 React 时生效。 :::

默认值'automatic'

@babel/preset-reactruntime 配置项。

hot

:::note 只在使用 React 时生效。 :::

默认值true

是否引入 react-refresh/babel 来支持使用 fast-refresh

vueJsx

:::note 只在使用 Vue/Vue3 时生效。 :::

默认值true

类型true | false | object

是否使用 @vue/babel-preset-jsx(Vue)或 @vue/babel-plugin-jsx(Vue3)来支持使用 jsx

当传入一个 object 时,等同于设置为 true,且该 object 将会作为 @vue/babel-preset-jsx(Vue)或 @vue/babel-plugin-jsx(Vue3)的参数。

targets

默认值

{
  ios: '9',
  android: '5'
}

@babel/preset-envtargets 配置项。

useBuiltIns

默认值false

有效值'entry' | 'usage' | false

useBuiltIns: 'entry'

:::info 优点:全局彻底 polyfill,就算 node_modules 中的依赖存在不兼容的代码,也能成功运行。

缺点:可能会引入冗余代码、影响全局变量。 :::

当传入 'entry' 时,会把 @babel/preset-envuseBuiltIns 选项设为 'entry'corejs 选项设为 '3'

开发者需要在入口文件 app.js 中引入 core-js

import "core-js"

Babel 会根据 targets,引入对应的 core-js 依赖。例如上述代码会被编译为:

import "core-js/modules/es.string.pad-start";
import "core-js/modules/es.string.pad-end";
// ...

当然,因为这时 Taro 把 corejs 设置为 '3',所以可以使用 core-js@3 手动按需引入的能力,详情请见文档

useBuiltIns: 'usage'

:::info 优点:按需引入、不会影响全局变量。

缺点:默认不会处理 node_modules 中的依赖,需要手动配置 babel-loader。 :::

当传入 'usage' 时,会把 @babel/plugin-transform-runtimecorejs 选项设为 3

注意:传入 'usage' 时, Taro 没有使用 @babel/preset-envuseBuiltIns: 'usage' 而是使用了 @babel/plugin-transform-runtimecorejs: 3。原因在于:一、两者同时设置时会产生冲突。二、后者相对于前者,不会影响全局变量。

useBuiltIns: false

当传入 false 时,会把 @babel/preset-envuseBuiltIns 选项设为 false,此时不会引入 core-js

loose

默认值false

同时是 @babel/preset-env@babel/plugin-proposal-class-propertiesloose 配置项。

debug

默认值false

@babel/preset-envdebug 配置项。

modules

默认值false

@babel/preset-envmodules 配置项。

spec

@babel/preset-envspec 配置项。

configPath

@babel/preset-envconfigPath 配置项。

include

@babel/preset-envinclude 配置项。

exclude

@babel/preset-envexclude 配置项。

shippedProposals

@babel/preset-envshippedProposals 配置项。

forceAllTransforms

@babel/preset-envforceAllTransforms 配置项。

decoratorsBeforeExport

@babel/plugin-proposal-decoratorsdecoratorsBeforeExport 配置项。

decoratorsLegacy

默认值true

@babel/plugin-proposal-decoratorslagacy 配置项。

absoluteRuntime

默认值:开发者根目录 node_modules 中的 @babel/plugin-transform-runtime 的路径。

类型string

@babel/plugin-transform-runtimeabsoluteRuntime 配置项。

version

默认值:开发者根目录 node_modules 中的 @babel/plugin-transform-runtime 的版本号。

类型string

@babel/plugin-transform-runtimeversion 配置项。

Current Tags

  • 3.0.29                                ...           3.0 (5 years ago)
  • 3.3.0-alpha.8                                ...           alpha (5 years ago)
  • 3.4.0-beta.3                                ...           beta (4 years ago)
  • 3.5.0-canary.0                                ...           canary (4 years ago)
  • 0.0.0-experimental.2                                ...           experimental (6 years ago)
  • 3.4.1                                ...           latest (4 years ago)
  • 3.2.2-beta.0                                ...           next (5 years ago)

155 Versions

  • 3.4.1                                ...           4 years ago
  • 3.4.0                                ...           4 years ago
  • 3.4.0-beta.3                                ...           4 years ago
  • 3.3.20                                ...           4 years ago
  • 3.3.19                                ...           4 years ago
  • 3.4.0-beta.2                                ...           4 years ago
  • 3.4.0-beta.1                                ...           4 years ago
  • 3.3.18                                ...           4 years ago
  • 3.3.17                                ...           4 years ago
  • 3.5.0-canary.0                                ...           4 years ago
  • 3.3.16                                ...           4 years ago
  • 3.4.0-beta.0                                ...           4 years ago
  • 3.3.15                                ...           4 years ago
  • 3.3.14                                ...           4 years ago
  • 3.3.13                                ...           4 years ago
  • 3.3.12                                ...           4 years ago
  • 3.3.11                                ...           4 years ago
  • 3.3.10                                ...           4 years ago
  • 3.3.9                                ...           5 years ago
  • 3.3.8                                ...           5 years ago
  • 3.3.7                                ...           5 years ago
  • 3.3.6                                ...           5 years ago
  • 3.3.5                                ...           5 years ago
  • 3.3.4                                ...           5 years ago
  • 3.3.3                                ...           5 years ago
  • 3.3.2                                ...           5 years ago
  • 3.3.1                                ...           5 years ago
  • 3.3.0                                ...           5 years ago
  • 3.3.0-beta.1                                ...           5 years ago
  • 3.2.16                                ...           5 years ago
  • 3.2.15                                ...           5 years ago
  • 3.2.14                                ...           5 years ago
  • 3.3.0-beta.0                                ...           5 years ago
  • 3.2.13                                ...           5 years ago
  • 3.3.0-alpha.8                                ...           5 years ago
  • 3.2.12                                ...           5 years ago
  • 3.2.11                                ...           5 years ago
  • 3.3.0-alpha.7                                ...           5 years ago
  • 3.3.0-alpha.6                                ...           5 years ago
  • 3.3.0-alpha.5                                ...           5 years ago
  • 3.2.10                                ...           5 years ago
  • 3.3.0-alpha.4                                ...           5 years ago
  • 3.2.9                                ...           5 years ago
  • 3.2.9-alpha.0                                ...           5 years ago
  • 3.2.8                                ...           5 years ago
  • 3.2.7                                ...           5 years ago
  • 3.2.6                                ...           5 years ago
  • 3.2.5                                ...           5 years ago
  • 3.2.4                                ...           5 years ago
  • 3.2.3                                ...           5 years ago
  • 3.3.0-alpha.2                                ...           5 years ago
  • 3.2.2                                ...           5 years ago
  • 3.3.0-alpha.1                                ...           5 years ago
  • 3.2.2-beta.0                                ...           5 years ago
  • 3.3.0-alpha.0                                ...           5 years ago
  • 3.2.1                                ...           5 years ago
  • 3.2.0                                ...           5 years ago
  • 3.1.5                                ...           5 years ago
  • 3.2.0-beta.4                                ...           5 years ago
  • 3.2.0-beta.3                                ...           5 years ago
  • 3.1.4                                ...           5 years ago
  • 3.1.3                                ...           5 years ago
  • 3.2.0-beta.2                                ...           5 years ago
  • 3.2.0-beta.1                                ...           5 years ago
  • 3.0.29                                ...           5 years ago
  • 3.1.2                                ...           5 years ago
  • 3.2.0-beta.0                                ...           5 years ago
  • 3.1.1                                ...           5 years ago
  • 3.1.0                                ...           5 years ago
  • 3.2.0-canary.9                                ...           5 years ago
  • 3.1.0-beta.12                                ...           5 years ago
  • 3.1.0-beta.11                                ...           5 years ago
  • 3.0.28                                ...           5 years ago
  • 3.1.0-beta.10                                ...           5 years ago
  • 3.1.0-beta.9                                ...           5 years ago
  • 3.1.0-beta.8                                ...           5 years ago
  • 3.1.0-beta.7                                ...           5 years ago
  • 3.0.27                                ...           5 years ago
  • 3.1.0-beta.6                                ...           5 years ago
  • 3.1.0-beta.5                                ...           5 years ago
  • 3.0.26                                ...           5 years ago
  • 3.2.0-canary.8                                ...           5 years ago
  • 3.0.25                                ...           5 years ago
  • 3.2.0-canary.7                                ...           5 years ago
  • 3.0.24                                ...           5 years ago
  • 3.0.23                                ...           5 years ago
  • 3.2.0-canary.6                                ...           5 years ago
  • 3.0.22                                ...           5 years ago
  • 3.2.0-canary.5                                ...           5 years ago
  • 3.2.0-canary.4                                ...           5 years ago
  • 3.0.21                                ...           5 years ago
  • 3.0.20                                ...           5 years ago
  • 3.0.19                                ...           5 years ago
  • 3.2.0-canary.3                                ...           5 years ago
  • 3.1.0-beta.4                                ...           5 years ago
  • 3.2.0-canary.2                                ...           5 years ago
  • 3.0.18                                ...           5 years ago
  • 3.2.0-canary.1                                ...           5 years ago
  • 3.2.0-canary.0                                ...           5 years ago
  • 3.1.0-beta.3                                ...           5 years ago
  • 3.1.0-beta.2                                ...           5 years ago
  • 3.0.17                                ...           5 years ago
  • 3.1.0-beta.1                                ...           5 years ago
  • 3.0.16                                ...           5 years ago
  • 3.1.0-beta.0                                ...           5 years ago
  • 3.0.15                                ...           5 years ago
  • 3.1.0-alpha.2                                ...           5 years ago
  • 3.1.0-alpha.1                                ...           6 years ago
  • 3.0.14                                ...           6 years ago
  • 3.0.13                                ...           6 years ago
  • 3.0.12                                ...           6 years ago
  • 3.1.0-alpha.0                                ...           6 years ago
  • 3.0.11                                ...           6 years ago
  • 3.0.10                                ...           6 years ago
  • 3.0.9                                ...           6 years ago
  • 3.0.8                                ...           6 years ago
  • 3.0.7                                ...           6 years ago
  • 3.0.6                                ...           6 years ago
  • 3.0.5                                ...           6 years ago
  • 3.0.4                                ...           6 years ago
  • 3.0.3                                ...           6 years ago
  • 3.0.2                                ...           6 years ago
  • 3.0.1                                ...           6 years ago
  • 3.0.0                                ...           6 years ago
  • 3.0.0-rc.6                                ...           6 years ago
  • 3.0.0-rc.5                                ...           6 years ago
  • 3.0.0-rc.4                                ...           6 years ago
  • 3.0.0-rc.3                                ...           6 years ago
  • 3.0.0-rc.2                                ...           6 years ago
  • 3.0.0-rc.1                                ...           6 years ago
  • 3.0.0-rc.0                                ...           6 years ago
  • 3.0.0-beta.6                                ...           6 years ago
  • 0.0.0-experimental.2                                ...           6 years ago
  • 3.0.0-beta.5                                ...           6 years ago
  • 3.0.0-beta.4                                ...           6 years ago
  • 3.0.0-beta.3                                ...           6 years ago
  • 3.0.0-beta.2                                ...           6 years ago
  • 3.0.0-beta.1                                ...           6 years ago
  • 3.0.0-beta.0                                ...           6 years ago
  • 3.0.0-alpha.9                                ...           6 years ago
  • 3.0.0-alpha.8                                ...           6 years ago
  • 3.0.0-alpha.7                                ...           6 years ago
  • 3.0.0-alpha.6                                ...           6 years ago
  • 3.0.0-alpha.5                                ...           6 years ago
  • 3.0.0-alpha.4                                ...           6 years ago
  • 3.0.0-alpha.3                                ...           6 years ago
  • 3.0.0-alpha.2                                ...           6 years ago
  • 3.0.0-alpha.1                                ...           6 years ago
  • 3.0.0-alpha.0                                ...           6 years ago
  • 3.0.0-experimental.5                                ...           6 years ago
  • 3.0.0-experimental.4                                ...           6 years ago
  • 3.0.0-experimental.3                                ...           6 years ago
  • 3.0.0-experimental.0                                ...           6 years ago
  • 3.0.0-experimental.2                                ...           6 years ago
  • 1.3.22                                ...           6 years ago

Copyright 2013 - present © cnpmjs.org | Home |