npm 包 node-builtins 使用教程

阅读时长 3 分钟读完

简介

在 Node.js 中,全局对象(global)和常用的对象方法(如:setTimeout、process)都是内置的。这些内置的对象和方法被称为 Node.js 内建模块(node built-ins),它们都是 Node.js 的核心模块之一。使用内建模块不需要安装任何包,可以直接使用。

在前端开发中,我们也需要使用一些内建模块,比如 console、setTimeout。但是,浏览器不支持 Node.js 内建模块。如何解决这个问题呢?一个方法是使用 npm 包 node-builtins。

node-builtins 包可以使我们在浏览器中使用 Node.js 内建模块,同时也可以方便我们在前端项目中使用一些依赖于这些内建模块的 npm 包。

安装

使用 npm 可以很方便地安装 node-builtins:

安装完成后,我们可以在代码中引入 node-builtins:

使用方法

1. 基本用法

引入 node-builtins 后,我们可以通过调用其 exports 对象来使用内建模块。以 console 为例,我们可以这样使用:

2. 使用 ES 模块

node-builtins 包中默认使用 CommonJS 模块,但我们也可以使用 ES 模块。可以这样引入:

注意要引入 node-builtins 的 es6 模块。

3. 使用自定义的全局对象

默认情况下,node-builtins 会使用全局对象 window 作为其内建模块的上下文,但我们也可以使用自定义的全局对象。可以这样设置:

4. 使用少量内建模块

如果只使用了部分内建模块,我们可以通过配置来减小打包后的文件大小。可以这样配置:

这里排除了 console 和 setTimeout 两个内建模块。

示例代码

下面是一个使用 node-builtins 的具体例子,它使用了 setImmediate 内建模块:

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

--- - - --

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

运行该代码,在开发者工具的控制台中可以看到输出 0~9 的数字。

总结

node-builtins 可以让我们在浏览器中使用 Node.js 内建模块。它可以方便地解决一些在前端项目中使用 NPM 包时遇到的内建模块缺失的问题。同时,node-builtins 还有部分常用的调试和测试工具,如 tap 和 assert 等。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f262c333b0ab45f74a8b9ad

纠错
反馈