Babel详解

简介

       Babel 是一个工具链,主要用于将 ECMAScript 2015+ 版本的代码转换为向后兼容的 JavaScript 语法,以便能够运行在当前和旧版本的浏览器或其他环境中。

安装

  • 控制台命令窗口执行命令:npm install -g babel-cli。
  • 还可以使用阿里云镜像,执行命令:cnpm install -g babel-cli,下载速度更快。
  • 查看是否安装成功:babel --version,即查看安装的babel版本。

使用

  1. 创建babel文件夹(以下的命令都是在这个文件夹中执行)
  2. 初始化项目:npm init -y
  3. 创建src/example.js文件,下面是一段ES6代码:
//ES6
let name="THU";
const title="大学";
let arr=[1,2,3,4,5,6,7,8,9,10];
let arr2=arr.map(obj=>obj*2);
console.log(arr2);
console.log(name);
console.log(title);

  1. 配置 .babelrc 文件,这是babel的配置文件,存放在项目的根目录下,该文件用来设置转码规则和插件,其基本格式如下:
{
  "presets": [...],
  "plugins": [...]
}
  • presets字段设置转码规则,将es2015加入到.babelrc,
{
  "presets": ["es2015"],
  "plugins": []
}
  1. 安装转码器,在项目中安装,执行命令:

     cnpm install --save-dev babel-preset-es2015
    
  2. 转码(两种方法)

    • 执行命令:babel src -d dist,将src目录下的所有源文件全部编译成对应的es2015文件,会在src同级目录中创建一个dist目录,将编译好的文件放在dist目录中。

    • 自定义脚本,在package.json文件中进行配置

      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "dev":"babel src -d dist"
       },
    

    再执行命令:npm run dev,这里的“dev”也就是在json文件中配置的键的名称。

目录结构如下:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
babel-import-plugin是一个用于实现组件库/工具库的按需加载的插件。它类似于babel-plugin-transform-imports和babel-plugin-import。它可以自动按需引入需要的组件,从而减少打包文件的大小。不过,实际生产中,建议使用babel-plugin-transform-imports和babel-plugin-import这两个插件中的一个。 使用babel-plugin-import可以实现自动按需引入,具体配置如下: 1. 首先安装babel-plugin-import:npm i babel-plugin-import -D 2. 在babel配置文件中添加以下配置: ```javascript module.exports = { plugins: [ ['import', { libraryName, libraryDirectory: 'es', style: true }, libraryName] ] }; ``` 这里的libraryName是你需要按需引入的组件库的名称。 通过以上配置,你就可以使用import语句来按需引入需要的组件了,例如: ```javascript import { Button } from libraryName; ``` 这样就可以只引入需要的Button组件,而不是整个组件库。 同时,现在的babel也提供了一些API来简化babel-plugin-import的代码或逻辑,例如path.replaceWithMultiple。不过,源码中的一些看似多余的逻辑可能是为了满足特定的场景而保留的。所以,在使用这些API时需要根据实际情况进行判断和选择。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [babel-plugin-my-import:像babel-plugin-transform-imports这样的babel插件](https://download.csdn.net/download/weixin_42166918/18495983)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [babel-import-plugin:](https://blog.csdn.net/weixin_48123820/article/details/130476061)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [你不容错过的babel-plugin-import史上最全源码详解!](https://blog.csdn.net/a958014226/article/details/115356326)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值