npm 包 metalsmith-paginate 使用教程

阅读时长 4 分钟读完

前言

metalsmith-paginate 是一个用于静态网站生成器 Metalsmith 中的 npm 包,用于网站的分页显示。尤其适用于博客和文章纵横的网站,同时也可以有效地增强网站的用户体验。本文将详细介绍如何安装和使用这个 npm 包。

环境与前提

  • 安装了 Node.js 以及 npm 包管理器;
  • 使用 Metalsmith 作为静态网站生成器;
  • 在项目中添加了 metalsmith-paginate。

安装

metalsmith-paginate 可以直接从 npm 安装:

请确保您已在 MetalSmith 的配置文件中添加了本插件。

配置

将以下代码添加到你的 metalsmith.json 文件中。

-- -------------------- ---- -------
-
  ---------- -
    ---------------------- -
      ---------- ---
      ----------- -----------------------
      ------- ---------------------
      --------------- -
        --------- ------
      -
    -
  -
-
  • perPage: 每一页显示的文章数。
  • template: 可选项,包含分页标记的模板文件的路径。如果不设置,则使用默认模板。
  • path: 可选项,生成分页模板文件所在的目录。此范例生成得到的 pretty URLs 为 www.example.com/pagination/page1.html,完整的目录将与 MetalSmith 的输出目录合并。如果不设置,则保存文件到 MetalSmith 的输出(即 build)目录下。
  • pageMetadata: 可选项,它是一个 object,包含了 Pagination 相关的所有信息。在 pageMetadata 对象下,我们只指定页面标题前缀。

模板代码

下面是一个使用 Handlebars 模板的范例。在此示例中,我们使用了 currentPagefirst, prevnextlast 等变量,这些变量均由 metalsmith-paginate 插件生成。

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

如何在代码中使用分页

请将 browsers 或 templates 渲染器中的代码分成分页。调用{{:: pagination()}}可以自动生成分页标记。在以下范例中,参考了 articles 变量以及 currentPage 变量。

网页

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

邮件

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

如果您是 Metalsmith 的新手,请查看 Metalsmith 的官方文档以更好地理解这个工具。

总结

通过使用 metalsmith-paginate,我们可以方便地把长篇文章或博客拆分为多个页面。它为网站提供了更好的用户体验和改善了网站的性能。如果你正在使用 Metalsmith 作为静态网站生成器,metalsmith-paginate 应该是你的必备插件。

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

纠错
反馈