Nuxt/packages/babel-preset-app
2019-03-21 19:29:51 +00:00
..
src hotfix: revert to corejs@2 (#5317) 2019-03-21 19:29:51 +00:00
CHANGELOG.md v2.5.0 2019-03-21 16:37:34 +03:30
package.json hotfix: revert to corejs@2 (#5317) 2019-03-21 19:29:51 +00:00
README.md hotfix: revert to corejs@2 (#5317) 2019-03-21 19:29:51 +00:00

@nuxt/babel-preset-app

Default babel preset for nuxt

Usage

This is the default preset used by Nuxt, which is mainly a wrapper around the @babel/preset-env preset. It also optionally uses the @vue/babel-preset-jsx preset as well as @babel/plugin-syntax-dynamic-import, @babel/plugin-proposal-decorators, @babel/plugin-proposal-class-properties, @babel/plugin-transform-runtime. Furthermore the preset is adding polyfills.

Usually, no additional configuration is required. If needed though, there is an option to fine-tune the preset's behavior. Just add the following to nuxt.config.js:

babel: {
  presets({ isServer }) {
    return [
      [ "@nuxt/babel-preset-app", options ]
    ]
  }
}

...where options is an object with parameters, for example:

 const options = {
  useBuiltIns: "entry"
}

Below is a list of all available parameters:

Options

There are detailed docs for the parameters of '@babel/preset-env'.

Example 1. Change targets for server and client respectively

babel: {
  presets({ isServer }) {
    return [
      [
        "@nuxt/babel-preset-app",
        {
          targets: isServer
            ? { node: "current" }
            : { browsers: ["last 2 versions"], ie: 11 }
        }
      ]
    ]
  }
},