npm 包 fuller-buble 使用教程

简介

fuller-buble 是一个基于 Buble 的 JavaScript 转译器,它的目的是让你的代码能够在尽可能多的浏览器上运行。与其它转译器不同的是,fuller-buble 采用了更为激进的转译策略,尽可能地降低代码中 ES6+ 特性的使用,从而提高代码运行的兼容性。

使用 fuller-buble 有很多好处,比如:

  • 与 Babel 相比,更快的转译速度
  • 与 Terser 相比,更小的输出体积
  • 采用更为激进的转译策略,生成更加兼容的代码
  • 输出代码不需 polyfill,减少了对环境的依赖

本文将详细介绍如何使用 fuller-buble,帮助你更快、更好地运用这个强大的工具。

安装

全局安装 fuller-buble:

--- ------- -- ------------

使用

命令行使用

使用 fuller-buble 转译文件:

------------ -------- -- ---------

输入文件和输出文件都可以为文件名,也可以为 - 表示从标准输入输出。

除了上述参数,fuller-buble 还支持很多其它参数,比如 --quiet 表示不输出日志,--targets 表示指定待转换的浏览器环境等。更多详细的使用指南请参考相关文档。

gulp 使用

gulp 是一个非常流行的自动化构建工具。下面演示如何使用 fuller-buble 在 gulp 中将 ES6 代码转译成 ES5:

----- ---- - ----------------
----- ----- - ----------------------
----- ----------- - ------------------------

-------------------- -------- -- -
  ------ -----------------------
    --------------------
    -------------
      -------- --------------
    ---
    -------------------------
---

上述代码中先使用 fuller-buble 转译代码,再使用 Babel 转译成 ES5 代码。

webpack 插件

fuller-buble 也提供了 webpack 插件。示例:

----- ----------------- - --------------------------------

-------------- - -
  ------- -
    ------ -
      -
        ----- --------
        ------- ----------------------
        -------- -
          ----------- -
            ------ ------
            ---------- -----
          -
        -
      -
    -
  --
  -------- -
    --- -------------------
      ----------- -
        ------ ------
        ---------- -----
      -
    --
  -
--

参数说明

transforms

类型: Object

转译配置,详见 Buble 文档。默认为:

-
  -------- ------
  --------------- -----
  ------------------------------ ----
-

objectAssign

类型: boolean

指定是否在需要使用 Object.assign 时,自动插入 polyfill。默认为 false

target

类型: stringArray

指定目标浏览器的版本,详见 browserlist 文档。默认为:

- --
---- - --------
--- ----

示例代码

下面是一个使用 fuller-buble 的示例代码:

-- ----
----- ---- - -
  ----- --- - --- -- ---
  ----- --- -- -- - ----
  -------------- -- ---

  ----- -------- ---------- -
    ----- ------ - ----- -------------------------
    --------------------
  -

  -----------
--

-- -- ------------ ----
----- ----------- - ------------------------

----- ------ - ---------------------------------
--------------------

转译后的代码为:

----- --- - --- -- ---
----- - - -------
    - - -------
    - - -------
-------------- -- ---

-------- ---------- -
    ----- ------ - -------------------------
    ------ -------------------- ------- -
        ----- ------ - ------
        --------------------
        ------ -------
    ---
-

-----------

总结

本文介绍了如何使用 fuller-buble 进行 JavaScript 转译。我们详细介绍了它的优点以及如何在命令行、gulp、webpack 等不同场景下使用。希望可以帮助到大家,让你的代码能够更好地运行在更多的浏览器上。

如果你还有什么问题或建议,欢迎在评论区留言,我们会尽快处理。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/600668f0d9381d61a3540d90


猜你喜欢

  • npm 包 lang-detect-cli 使用教程

    lang-detect-cli 是一个命令行工具,用于检测文本的语言。该工具基于 langdetect 库实现。本文将详细介绍如何安装和使用 lang-detect-cli。

    3 年前
  • npm 包 orange-build-cli 使用教程

    在前端开发中,构建工具是必不可少的一部分,它能够自动化完成许多繁琐的操作,提高我们的效率。而 orange-build-cli 就是一款基于 Webpack 的构建工具,它能够帮我们自动化完成打包、压...

    3 年前
  • npm 包 spi-client-js-autoip 使用教程

    介绍 SPI (Serial Peripheral Interface) 客户端是一种常见的硬件接口协议,在物联网设备中被广泛使用。Webpack 是一个模块打包器,可以将多个模块打包成一个文件。

    3 年前
  • npm 包 gulu-lmj 使用教程

    简介 gulu-lmj 是一款基于 Vue.js 开发的前端 UI 组件库,提供了丰富的组件和工具,可以大大提高前端开发效率,同时也有利于代码的复用和维护。本文主要介绍 gulu-lmj 的使用方法和...

    3 年前
  • npm 包 @giveback007/proxy-state 使用教程

    介绍 在前端开发中,使用状态管理是非常重要的一部分。@giveback007/proxy-state 是一个功能强大的 npm 包,可帮助你轻松管理你的状态。该包使用 ES6 Proxy 实现了状态和...

    3 年前
  • npm 包 @nobleclem/jquery-dragndrop 使用教程

    前言 随着 Web 开发的发展,我们在开发过程中常常需要使用一些第三方库来辅助我们完成任务。其中,npm 包是很重要的一部分,它们提供了很多实用的功能,可以帮助我们更快、更高效地完成开发工作。

    3 年前
  • npm 包 donejs-ursa 使用教程

    在前端开发过程中,我们常常需要使用加密算法来保护我们的敏感数据或者验证信息的安全性。一个常用的开源库就是 donejs-ursa。本文将介绍 donejs-ursa 的使用方法,希望能给初学者带来些许...

    3 年前
  • npm 包 starcount 使用教程

    starcount 是一个可以方便地获取 GitHub 上某个仓库的 star 数量的 npm 包,本文将介绍如何使用该包,并提供具体的代码示例。 安装 安装 starcount 可以使用 npm,命...

    3 年前
  • npm 包 roboto-stylus 使用教程

    介绍 Roboto-stylus 是一个 npm 包,提供了 Google 出品的 Roboto 字体的 stylus 实现。将其引入项目后,可以在 stylus 文件中直接使用 Roboto 字体的...

    3 年前
  • npm 包 callbag-timestamp 使用教程

    在前端开发中,我们常常需要对流式数据进行处理。而在 JavaScript 中,我们可以使用 callbags 来处理这些数据流。其中,callbag-timestamp 是一种常用的 npm 包,用于...

    3 年前
  • npm 包 pouch.cors 使用教程

    前言 在 Web 前端开发中,经常会使用到浏览器端存储数据的功能,这时候就需要用到一些数据存储解决方案。其中,PouchDB 是一个非常不错的浏览器端数据库,它可以让你在浏览器中以本地方式存储数据。

    3 年前
  • npm 包 web-watermark 使用教程

    在前端开发中,我们经常需要添加水印来保护网站的版权以及数据的安全性。而 npm 包 web-watermark 是一个十分方便的工具,可以帮助我们快速添加水印。本篇文章将详细介绍 npm 包 web-...

    3 年前
  • npm 包 @kimmel/array-shuffle 使用教程

    在前端开发过程中,我们常常需要对数组进行随机排序。而 npm 包 @kimmel/array-shuffle 就可以帮助我们轻松地实现这一功能。 安装 首先,我们需要在命令行工具中使用 npm 安装该...

    3 年前
  • npm 包 hyperdb-storage 使用教程

    在前端开发中,数据存储是一个十分重要的环节。npm 包 hyperdb-storage 是一个优秀的轻量级 JavaScript 库,它可以用来存储和管理你的应用数据,为你的开发提供了很大的便利。

    3 年前
  • npm 包 long-api-task-requester 使用教程

    在前端开发中,我们往往需要向服务器发送异步请求去获取数据,但是一些复杂的业务场景,如批处理、分布式计算等,可能需要在服务器上执行一些耗时较长的任务,同时客户端又需要不断地查询任务进度和结果。

    3 年前
  • npm包rn-touchable-sort-list使用教程

    #npm包rn-touchable-sort-list使用教程 介绍 rn-touchable-sort-list是一款基于React Native开发的组件,它可以方便地将列表中的项进行拖拽排序。

    3 年前
  • npm 包 svgpdf 使用教程

    SVG 是可伸缩矢量图形 (Scalable Vector Graphics) 的简称,它是一种基于 XML 语法的向量图形格式,可用于在网页中显示。同时,PDF 是一种非常流行的文件格式,可用于文档...

    3 年前
  • npm 包 grimm-user-pic 使用教程

    前言 在我们的日常前端开发中,使用到的 npm 包已经不可胜数了。随着前端技术的不断发展,我们也需要不断学习新的知识和掌握新的工具。今天,我们来介绍一款非常实用的 npm 包:grimm-user-p...

    3 年前
  • npm 包 jonas-palindrome 使用教程

    介绍 npm 包 jonas-palindrome 是一个用于检测回文字符串的 JavaScript 库。它可以判断给定字符串是否回文,并针对不同需求提供不同类型的返回结果。

    3 年前
  • npm包lemme-lex的使用教程

    前言 在前端开发中,有许多需要进行语法解析的工作,比如编译器、解释器等。而为了更方便地进行语法解析,我们可以使用一些现成的npm包。其中,lemme-lex就是一款非常实用的npm包。

    3 年前

相关推荐

    暂无文章