npm 包 metalsmith-loader 使用教程

阅读时长 4 分钟读完

简介

Metalsmith 是一个静态站点生成器,它使用 Node.js,并使用了 Metalex 的概念。Metalsmith 的工作方式很简单,就是读取文件,让用户利用插件进行转换,然后将输出保存到指定的目录中。

metalsmith-loader 是一个快速实现使用 metalsmith 的编译器和加载器的 npm 包,它简化了 metalsmith 的使用,可以轻松地使用各种不同的模板引擎和更多功能。本文将详细介绍 metalsmith-loader 的使用方法。

安装

运行以下命令进行安装:

有关比较详细的 Metalsmith 信息可以在此处找到:http://www.metalsmith.io/

使用

下面我们将演示使用 HBS 模板引擎来进行简单的页面生成。

步骤 1:创建目录和文件

我们先创建一个名为 src 的目录,并在该目录中创建一个 index.html 文件以及一个名为 layout.hbs 的 HBS 模板。

src/index.html 文件内容如下:

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

src/layout.hbs 文件内容如下:

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

请注意,文件中的所有代码都是 HBS 模板,在这里我们使用 Mustache 模板引擎。你可以使用任何你喜欢的模板引擎。

步骤 2:创建 metalsmith 配置文件

我们还需要为 Metalsmith 指定配置文件,告诉它在哪里找到我们的页面和模板,并将输出保存在哪里。

创建 metalsmith.js 文件,然后复制以下内容:

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

-------------- - ---------------------
  -----------
    ------ ------------------ ------
  --
  ----------------
  -------------
    -------- --------------
    ------- -------------
    ---------- --------
    --------- -
      ------- -------------
    --
    ---------------- -------- -------- -
      -------------------------------- ---- -----------
    --
    ----------------- -------- -------- ----- -
      ------------- - -------
    --
  ---
  -------------------------
  • 对于 pattern,所有匹配到的文件都将通过处理器运行,所以要确保文件名的正确性。
  • engine 用于指定使用的模板引擎。
  • partials 是为了加载模板中可复用代码段的名称列表。
  • onEngineCreated 是在模板引擎实例化时运行的函数,用于将代码复制到引擎实例中。
  • onEngineRendered 在模板引擎渲染完所有页面后运行,并用于处理结果。

步骤 3:编译和查看输出

现在,我们可以通过以下命令来编译并生成静态站点:

如果一切顺利,你现在应该可以在输出路径 (./public/index.html) 中看到编译后的页面。

总结

我们介绍了如何使用 metalsmith-loader 配合 HBS 模板引擎来生成静态站点。这是一个基础案例,我们可以通过更多的开源工具和插件来轻松定制它。希望这篇介绍经过的深度和学习及指导性,可以帮助您更好的使用 Metalsmith 并提高前端开发效率。

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

纠错
反馈