npm 包 markdown-it-named-headings 使用教程

前言

在前端开发中,我们经常需要使用 markdown 语言来书写文档并显示在网页上。但是,有时候我们需要给某些标题添加 id 和 class,以方便后续的操作和渲染效果。markdown-it-named-headings 便是一个可以实现这种功能的 npm 包。

安装

使用 npm 安装 markdown-it-named-headings:

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

使用方法

在 Node.js 中引入该包:

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

然后在 markdown-it 中使用该插件:

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

配置项

markdown-it-named-headings 提供了一些配置项,以定制化生成的标题。

slugify

slugify 用于定义生成的 id,其默认值为:

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

这段函数会把标题文本中的多余空格、大写字母都剔除掉,并且把空格转成短横线。

如果需要定制化 id 的生成方式,可以传入自定义的 slugify 函数:

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

level

level 用于定义生成的标题级别,默认是从 h2 到 h6:

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

如果需要定制级别和对应的 class,可以传入自定义的 level 映射:

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

callback

callback 用于定义生成完毕后的回调函数。比如,可以用来增加一些特殊的操作,如跳转锚点等。默认回调函数为空函数。

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

注意

需要注意的是,使用该插件生成的标题以及自定义的 class 都会被 markdown-it 转化成 HTML 标签。如果你需要对其进行修改,需要使用 DOM 操作,比如使用 jQuery:

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

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

示例

下面是一个使用示例:

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

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

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

该代码会输出下面的 HTML 代码:

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

如上所示,使用 markdown-it-named-headings 可以轻松生成具有 id 和 class 的标题,并且可以自定义生成的级别和对应的 class,同时还可以在生成完毕后增加回调函数处理操作。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/74135


猜你喜欢

  • npm 包 request-enhanced 使用教程

    前言 在进行前端开发时,经常需要进行网络请求。而 Node.js 的 request 包是一个常用的网络请求库,在其中使用 request 或 axios 可以轻松实现异步请求。

    5 年前
  • npm 包 passport.socketio 使用教程

    简介 passport.socketio 是一个 Node.js 中的 npm 包,它提供了在使用 Socket.IO 进行身份验证时的一个简单解决方案。它结合了 Passport.js(一个 Nod...

    5 年前
  • npm 包 cogs 使用教程

    前言 在前端开发中,我们常常需要进行复杂的数学计算和图形绘制,这时就需要用到一些专业的数学计算库和图形绘制库。cogs 就是这样一款优秀的 npm 包,它提供了丰富的数学计算和图形绘制功能,适用于前端...

    5 年前
  • npm 包 jquery-word-and-character-counter-plugin 使用教程

    随着前端技术的发展,我们经常需要使用各种开源工具来帮助我们简化开发流程,提高开发效率。今天我要跟大家介绍一个非常实用的 npm 包 jquery-word-and-character-counter-...

    5 年前
  • npm 包 crx-packager 使用教程

    在前端开发中,我们经常需要将代码打包成浏览器扩展(Chrome Extension)的形式来发布或测试。而将代码打包成浏览器扩展需要进行一系列的操作,但是 npm 包 crx-packager 可以帮...

    5 年前
  • npm 包 `nce-i18n` 使用教程

    介绍 nce-i18n 是一个基于 JavaScript 的 npm 包,用于前端国际化(i18n)功能的封装。它可以帮助开发者在网站或应用中轻松实现多语言切换、翻译等功能。

    5 年前
  • npm 包 nce-extension-manager 使用教程

    前言 在前端开发中,随着项目的逐渐复杂,代码量急剧增加,项目的可维护性和可扩展性也变得越来越重要。而在实际操作中,一个强大的插件管理工具可以大大提高我们的效率。nec-extension-manage...

    5 年前
  • npm 包 nce 使用教程

    随着前端技术的不断发展,前端开发已经成为一种独立的开发领域。在这个领域中,npm 是一个不可忽视的工具。npm (Node Package Manager) 是一个用来管理 Node.js 包的工具,...

    5 年前
  • npm 包 nce-winston 使用教程

    前言 在前端开发中,日志是一项非常重要的工作。它可以用于追踪错误,调试程序,或者记录应用的运行方式。针对日志的需求,我们可以使用 Winston 这个优秀的 Node.js 日志库。

    5 年前
  • npm 包 nce-amd 使用教程

    什么是 nce-amd nec-amd 是一个可用于浏览器端的 AMD 规范的模块加载器,它使用了 CommonJS 和 AMD 两种规范,可以以 CommonJS 的方式编写代码,同时提供 AMD ...

    5 年前
  • npm包 ksana-cli使用教程

    什么是ksana-cli? ksana-cli是一个命令行工具,它可以帮助你快速创建ksana.js应用程序。ksana.js是一个基于JavaScript的框架,用于构建基于文本的应用程序,例如字典...

    5 年前
  • npm 包 myelements.jquery 使用教程

    前言 在现代 Web 应用开发中,使用 JavaScript 框架和库已经成为了不可或缺的一部分。其中, jQuery 作为最流行的 JavaScript 库之一,已经被广泛使用。

    5 年前
  • npm 包 brunch-js-minify-js-files 使用教程

    介绍 brunch-js-minify-js-files 是一个 npm 包,可以使用它来压缩 JavaScript 文件,提高网站性能。本文将介绍如何使用 brunch-js-minify-js-f...

    5 年前
  • npm包flex-box使用教程

    介绍 npm是node.js的包管理器,它提供了大量可重用的代码库供开发者使用。其中一个非常常见的包是flex-box,它是一款用于布局的CSS框架。使用该框架能够给前端的开发过程带来很多的便利。

    5 年前
  • npm 包 pixbi-jscoverage 使用教程

    pixbi-jscoverage 是一个用于前端测试覆盖率统计的 npm 包。通过对代码进行覆盖率测试,可以帮助开发人员快速定位代码中存在的问题,提升代码的质量和可维护性。

    5 年前
  • npm 包 js-size 使用教程

    介绍 npm 包 js-size 是一个用于计算 JavaScript 代码体积的工具。它可以帮助开发者优化自己的代码,减少页面加载时间,提升用户体验。 本文将详细介绍如何使用 js-size 这个工...

    5 年前
  • npm 包 lintify 使用教程

    在前端开发中,我们不可避免地需要使用一些第三方依赖包来提供更好的功能和开发体验。但是,这些依赖包通常有不同的代码规范和风格,而这些规范和风格的不同会带来一些问题,例如代码可读性、维护性等。

    5 年前
  • npm 包 reverse-config 使用教程

    简介 reverse-config 是一个用于反转 JavaScript 配置对象的 NPM 包。当我们需要把一个 JavaScript 配置对象中的 key 和 value 互换时,这个包就可以派上...

    5 年前
  • npm 包 petty-print 使用教程

    npm 是一个 JavaScript 的包管理工具,能够轻松地分享、发现、安装和使用软件包。petty-print 是一个用于在终端上打印彩色文字的 npm 包,可以让我们的终端输出更加美观。

    5 年前
  • npm 包 browserifix 使用教程

    在前端开发中,我们常常需要考虑浏览器的兼容性问题,不同的浏览器可能会有不同的处理方式,导致我们的代码在不同的浏览器上出现问题。 为了解决这个问题,我们可以使用一些专门针对浏览器兼容性的工具,比如说 b...

    5 年前

相关推荐

    暂无文章