npm 包 metalsmith-unlisted 使用教程

阅读时长 4 分钟读完

在前端开发中,我们经常需要使用各种 npm 包来帮助我们完成某些功能。今天我们要介绍的是 metalsmith-unlisted 这个 npm 包,它可以帮助我们快速将特定文件夹中的文件排除在生成的页面之外,为我们的代码优化和性能提升提供了很大的帮助。

安装和使用

首先我们需要在项目中安装 metalsmith-unlisted,使用以下命令:

安装完成之后,我们需要在项目的 metalsmith.js 文件中引入它:

然后,我们在 Metalsmith 的配置文件中使用它:

-- -------------------- ---- -------
---------------------
    -------------- -- ----
    --------------------- -- -----
    ---------------
        ----------------------
        --------------------------
    ---
    ------------ ------ -- -
        -- ----- -
            ----- ----
        -
    ---
展开代码

以上代码中,exclude/this/folder 表示排除 src/exclude/this/folder 文件夹中所有的文件,exclude/that/folder/**/* 表示排除 src/exclude/that/folder 文件夹及其任何子文件夹中的所有文件。

深入解析

Metalsmith 是一个静态网站生成器,它允许开发者使用自己的喜好和方法构建网站。它为用户提供了非常强大的 API,允许用户使用自己喜欢的方式加载不同的插件来完成不同的任务。

metalsmith-unlisted 的作用是排除特定文件夹中的文件。它的源码仅仅只有4行 JavaScript 代码:

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

-------------- - ------------------ -
    ------ --------------- ----------- ----- -
        --- ---- -------- -- ------ -
            --- ---- - - -- - - ---------------- ---- -
                -- -------------------- ------------- -
                    ------ ----------------
                    ------
                -
            -
        -
        -------
    -
--
展开代码

可以看到,整个插件都是围绕着一个迭代器进行的,这是 fn => files => fn(files, ...args) 这个通用模式的一个很好的示例。

示例

为了理解这个插件的具体使用方法,我们举一个例子。

我们要在一个由 Metalsmith 构建的网站中排除掉名为 test 的文件夹中的一些文件。首先我们创建一个新的文件夹 test,并在其中新建两个文件 1.txt2.txt

然后我们需要在生成网站的配置文件 metalsmith.js 中添加排除规则:

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

---------------------
  ----------------
  -----------------------
  ---------------
    -----------
  ---
  ------------ -- -
    -- ----- -
      ----- ----
    -
  ---
展开代码

在我们的代码中添加了 .use(unlisted([ 'test/**/*' ])) 代码,表示建立了一个名为 test 的文件夹,并且删除了该文件夹中所有文件的输出。

结论

总之,metalsmith-unlisted 是一个非常有用的 npm 包。它可以帮助我们快速进行文件过滤,提高我们的代码性能,是前端开发中不可或缺的一个工具。希望这篇介绍能够帮助你更好地应用它。

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

纠错
反馈

纠错反馈