简介
npm 是一个流行的 Node.js 包管理器,用于将包安装到您的项目中。本文介绍了 npm 包 @trusktr/rollup-pluginutils,它是一个用于 rollup 的实用程序库。
概述
@trusktr/rollup-pluginutils 包提供了很多常用的实用程序,用于创建 rollup 插件。其中包括:
- createFilter: 用于过滤出源代码中需要编译的文件。
- attachScopes: 用于解析 import 路径和创建变量名。
- makeLegalIdentifier: 用于将字符串转换为合法的 JavaScript 标识符。
- addSideEffect: 用于将未通过导入语句生成的副作用添加到输出中。
安装
使用 npm 命令进行安装:
--- ------- --------------------------- ----------
使用
下面是一个简单的示例,展示了如何使用 @trusktr/rollup-pluginutils 创建一个简单的 rollup 插件。假设你的项目是一个 JavaScript 应用程序,它将所有的源代码存储在 src 目录中。
------ - ------------ - ---- ------------------------------ ------ ------- -------- ---------------- - --- - ----- ------ - ----------------------------- ----------------- ------ - ----- ------------ --------------- --- - -- ------------- ------- ----- --------------- - -- ---- --------- ----- ------- ------ - ----- ---------------- ---- ---- -- - -- -
在上面的示例中,我们使用 rollup 的 transform 钩子函数来转换文件。我们在创建插件时使用 createFilter 函数过滤出我们要编译的源代码文件。该示例插件简单地将代码转换成我们定义的格式。
如果您想使用 attachScopes、makeLegalIdentifier 或 addSideEffect 函数,也可以按照类似的方式导入它们。
------ - ------------- ------------- -------------------- ------------- - ---- ------------------------------ ------ ------- -------- ---------------- - --- - ----- ------ - ----------------------------- ----------------- ------ - ----- ------------ --------------- --- - -- ------------- ------- ----- --------------- - -- ---- --------- ----- ------- ----- - ----- - - ----------------- ---------- --------------------- -- ------------ ------- ------------------- --------------------- -- ------------- ------- ------ - ----- ---------------- ---- ---- -- - -- -
指南
@trusktr/rollup-pluginutils 包提供了许多有用的工具,可以使 rollup 插件编写更容易,更简洁。该软件包的文档提供了有关每个工具函数的更深入的信息。
如果您将要编写一个 rollup 插件,您可能希望阅读有关 http://rollupjs.org/guide/en/ 的更多信息。该指南包含有关 rollup 和 rollup 插件的详细信息。
结论
@trusktr/rollup-pluginutils 提供了许多实用程序函数,可以帮助您编写更简洁和可读的 rollup 插件。在您的下一个项目中,尝试使用该软件包并体验其中的核心功能。
欢迎将此工具包作为您的 rollup 插件脚本集成,并通过简单的技巧来简化您的 rollup 插件开发。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005726381e8991b448e893c