npm 包 mdsvex 使用教程

阅读时长 6 分钟读完

简介

Mdsvex 是一个可通过 Markdown 进行操作的 Svelte 类型组件的编译器,它能够将 Markdown 转化为 JavaScript 模块,从而可以在 Svelte 项目中使用。本文将详细介绍 mdsvex 的使用以及编写 Svelte 组件的相关技巧和注意事项。

安装

Mdsvex 是一个 npm 包,安装方式如下:

使用

在 Svelte 组件中使用 mdsvex,首先需要在组件文件中引入 mdsvex,并在 script 标签中使用 mdsvexsvelte_preprocess 函数进行预处理。下面是一个例子:

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

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

使用 mdsvexmdsvex 函数可以获得处理后的 Markdown 内容作为组件的渲染内容。

这样就可以在 Svelte 组件中使用 Markdown 进行文本内容的展示了。更多使用文档可以参考 mdsvex 官方文档

示例

下面为一个使用 mdsvex 的 Svelte 组件示例。

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

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

在上例中,component 标签使用 mdsvex 处理过的内容作为渲染内容。

教程

下面将逐步介绍如何编写一个支持 Markdown 渲染的 Svelte 应用。

创建 Svelte 项目

首先需要安装 sveltesvelte-preprocess

安装 Markdown 预处理器

安装 mdsvex

插入 Markdown 内容

src 目录下创建一个 Post.md 文件作为文章内容,内容可以如下:

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

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

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

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

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

创建 Svelte 组件

接下来我们需要创建一个 Svelte 组件来显示 Markdown 内容,如下所示:

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

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

在程序中,我们使用了 mdsvex 导出的 mdsvexsvelte_preprocess,这里需要将它们合并起来使用,详见上文。

创建布局模板

最后创建布局模板以在组件中继承,使 Markdown 内容可以在布局模板中被渲染。以下是一个基础的布局模板:

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

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

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

布局模板可根据需要自由扩展。

在最后,将 Post 组件封装在 Router 组件中以渲染到对应的路由上即可。

总结

本文详细介绍了如何使用 mdsvex 在 Svelte 中渲染 Markdown 内容,包括安装步骤和使用步骤。通过本文,读者可以学习到如何合理地编写 Svelte 组件,并能够在 Svelte 应用中使用 mdsvex 将 Markdown 组件化,更好地管理页面内容。

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

纠错
反馈