.babelrc 配置放在 package.JSON

Posted

技术标签:

【中文标题】.babelrc 配置放在 package.JSON【英文标题】:.babelrc configuration placed in package.JSON 【发布时间】:2018-12-31 23:23:33 【问题描述】:

目前正在探索与之相关的 webpack 不同工具。现在我正在使用 Babel 将 ES6 代码转换为 ES5 代码。我遇到了对包含 Babel 配置的.babelrc 文件的需求。但是,在 Babel 的网站上,我也看到您也可以将这些配置放入 package.json 文件中。像这样:

Package.json 文件:


  "name": "webpack-tutorial",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "scripts": 
    "dev": "webpack --mode development",
    "build": "webpack --mode production"
  ,
  "author": "",
  "license": "ISC",
  "devDependencies": 
    "babel-core": "^6.26.3",
    "babel-loader": "^7.1.5",
    "babel-preset-env": "^1.7.0",
    "webpack": "^4.16.2",
    "webpack-cli": "^3.1.0"
  ,
  "babel": 
    "presets": [
        "env"
    ]
  


现在,当我运行 npm run dev 时,Babel 也可以工作,并且代码已成功转译。

Babel 是如何知道访问 package.json 文件的?它是否首先查找.babelrc 文件,然后如果该文件不存在,它是否会自动在package.json 中查找其配置? Webpack 如何与Babelpackage.json 文件交互来产生这个结果?

【问题讨论】:

babeljs.io/docs/en/babelrc#lookup-behavior 好的,谢谢,很清楚!! 【参考方案1】:

有兴趣的朋友可以在official website:@

Babel 会在文件的当前目录中寻找 .babelrc 被转译。如果一个不存在,它将向上传播 目录树,直到找到 .babelrc 或 package.json 带有 "babel": 散列。

【讨论】:

根据我的经验,即使是空的或完全注释掉的 .babelrc 文件也会阻止 babel 查看 package.json。

以上是关于.babelrc 配置放在 package.JSON的主要内容,如果未能解决你的问题,请参考以下文章

package.json的所有配置项及其用法,你都熟悉么

VUE配置项结构

babelrc配置

babel配置文件.babelrc

深入浅出的webpack构建工具---babel之配置文件.babelrc

babel的.babelrc解析