1、npx介绍
npx 是 npm 5.2.0 版本引入的一个命令,它可以帮助我们在不全局安装模块的情况下,直接运行一个安装在本地的模块。
在使用 npx babel 时,可以直接在命令行中运行 babel,而不需要全局安装 babel。这样做的好处是,我们可以在不同的项目中使用不同版本的 babel,而不会互相干扰。
npx babel 的用法如下:
npx babel [options] [files]
其中,options
是 babel 的配置选项,files
是需要转换的文件或目录。
例如,我们可以使用以下命令将 src
目录下的所有 .js
文件转换为 ES5 语法:
npx babel src --out-dir lib
这个命令会将 src
目录下的所有 .js
文件转换为 ES5 语法,并将转换后的文件输出到 lib
目录中。
2、babel配置
要使用npx babel编译React和ES6代码,你需要安装以下依赖:
- @babel/core:Babel的核心库
- @babel/preset-env:用于编译ES6代码
- @babel/preset-react:用于编译React代码
可以通过以下命令安装这些依赖:
npm install @babel/core @babel/preset-env @babel/preset-react --save-dev
安装完成后,在项目根目录下创建一个.babelrc
文件,用于配置Babel的编译规则。在该文件中添加以下内容:
{
"presets": [
"@babel/preset-env",
"@babel/preset-react"
]
}
这样,Babel就会按照这些规则来编译React和ES6代码了。你可以使用以下命令来编译代码:
npx babel src --out-dir dist
其中,src
是你的源代码目录,dist
是编译后的代码目录。你也可以使用其他选项来自定义编译规则,具体可以参考Babel的官方文档。
3、Node.js脚本
以下是一个简单的Node.js脚本,可以自动遍历本地文件夹并完成React代码编译及npm推包:
const fs = require('fs');
const path = require('path');
const {
exec } = require('child_process');
// 设置需要遍历的文件夹路径
const folderPath = '/path/to/folder';
// 遍历文件夹
fs.readdir(folderPath, (err