mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-30 22:39:58 +02:00
Merge commit '00c4484c7092181729f6f470805bc7d72e8ad17b'
This commit is contained in:
@@ -3,7 +3,6 @@ title: Babel
|
||||
description: Hugo Pipes can process JS files with Babel.
|
||||
date: 2019-03-21
|
||||
publishdate: 2019-03-21
|
||||
lastmod: 2019-03-21
|
||||
categories: [asset management]
|
||||
keywords: []
|
||||
menu:
|
||||
@@ -12,7 +11,6 @@ menu:
|
||||
weight: 48
|
||||
weight: 48
|
||||
sections_weight: 48
|
||||
draft: false
|
||||
---
|
||||
|
||||
Any JavaScript resource file can be transpiled to another JavaScript version using `resources.Babel` which takes for argument the resource object and an optional dict of options listed below. Babel uses the [babel cli](https://babeljs.io/docs/en/babel-cli).
|
||||
@@ -24,37 +22,32 @@ Hugo Pipe's Babel requires the `@babel/cli` and `@babel/core` JavaScript package
|
||||
If you are using the Hugo Snap package, Babel and plugin(s) need to be installed locally within your Hugo site directory, e.g., `npm install @babel/cli @babel/core --save-dev` without the `-g` flag.
|
||||
{{% /note %}}
|
||||
|
||||
|
||||
### Config
|
||||
|
||||
{{< new-in "v0.75.0" >}}
|
||||
|
||||
In Hugo `v0.75` we improved the way we resolve JS configuration and dependencies. One of them is that we now add the main project's `node_modules` to `NODE_PATH` when running Babel and similar tools. There are some known [issues](https://github.com/babel/babel/issues/5618) with Babel in this area, so if you have a `babel.config.js` living in a Hugo Module (and not in the project itself), we recommend using `require` to load the presets/plugins, e.g.:
|
||||
We add the main project's `node_modules` to `NODE_PATH` when running Babel and similar tools. There are some known [issues](https://github.com/babel/babel/issues/5618) with Babel in this area, so if you have a `babel.config.js` living in a Hugo Module (and not in the project itself), we recommend using `require` to load the presets/plugins, e.g.:
|
||||
|
||||
|
||||
```js
|
||||
module.exports = {
|
||||
presets: [
|
||||
[
|
||||
require('@babel/preset-env'),
|
||||
{
|
||||
useBuiltIns: 'entry',
|
||||
corejs: 3
|
||||
}
|
||||
]
|
||||
]
|
||||
presets: [
|
||||
[
|
||||
require("@babel/preset-env"),
|
||||
{
|
||||
useBuiltIns: "entry",
|
||||
corejs: 3,
|
||||
},
|
||||
],
|
||||
],
|
||||
};
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Options
|
||||
|
||||
config [string]
|
||||
: Path to the Babel configuration file. Hugo will, by default, look for a `babel.config.js` in your project. More information on these configuration files can be found here: [babel configuration](https://babeljs.io/docs/en/configuration).
|
||||
|
||||
minified [bool]
|
||||
: Save as much bytes as possible when printing
|
||||
: Save as many bytes as possible when printing
|
||||
|
||||
noComments [bool]
|
||||
: Write comments to generated output (true by default)
|
||||
@@ -66,7 +59,7 @@ verbose [bool]
|
||||
: Log everything
|
||||
|
||||
sourceMap [string]
|
||||
: Output `inline` or `external` sourcemap from the babel compile. External sourcemaps will be written to the target with the output file name + ".map". Input sourcemaps can be read from js.Build and node modules and combined into the output sourcemaps.
|
||||
: Output `inline` or `external` sourcemap from the babel compile. External sourcemaps will be written to the target with the output filename + ".map". Input sourcemaps can be read from js.Build and node modules and combined into the output sourcemaps.
|
||||
|
||||
|
||||
### Examples
|
||||
|
Reference in New Issue
Block a user