nodejs md文件转html

javascript 复制代码
const marked = require('marked');

// 要转换的 Markdown 文本
const markdownText = `
# Hello, Markdown!

This is a paragraph.

- List item 1
- List item 2
`;

// 使用 marked 将 Markdown 转换为 HTML
const html = marked(markdownText);

console.log(html);

我直接读取md文件转换结果有误,第1行本应是标题1却变成了段落。文件内容跟上面字符串完全一样。后来打印二进制才知道从文件读取的前面多了些东西,原因是文件用了UTF8 BOM编码,最后改成UTF8编码问题解决。

javascript 复制代码
markdownContent = fs.readFileSync('.test.md', 'utf8');
const encoder = new TextEncoder();
console.log(encoder.encode(markdownContent));

marked用法

覆盖默认的渲染函数
javascript 复制代码
const marked = require('marked');

// 覆盖默认的渲染函数
const renderer = {
  // 处理标题的渲染函数,text 是标题文本,depth 是标题级别
  heading(text, depth) {
    // 将文本转换为小写,并将非单词字符替换为连字符 -
    const escapedText = text.toLowerCase().replace(/[^\w]+/g, '-');

    // 返回生成的 HTML 代码片段,包含锚点和标题文本
    return `
      <h${depth}>
        <a name="${escapedText}" class="anchor" href="#${escapedText}">
          <span class="header-link"></span>
        </a>
        ${text}
      </h${depth}>`;
  },
  code(raw, lang) {
    return `<pre><code class="prism language-${lang}">${raw}</code></pre>`;
}
};

// 将自定义的渲染函数应用于 marked 模块
marked.use({ renderer });

// 解析并输出 Markdown 文本
console.log(marked.parse('# heading+'));
const markdownText = `
\`\`\`python
print("Hello, World!")
\`\`\`
`;
console.log(marked.parse(markdownText));

官方资料:

https://marked.js.org/using_pro

相关推荐
郝学胜-神的一滴9 分钟前
C++20模板元编程 02:吃透模板基础核心四大核心知识点
开发语言·数据结构·c++·程序人生·软件工程·visual studio
troy12814 分钟前
Visual Studio Code 详细教程:从入门到高效开发
开发语言·python
泡海椒24 分钟前
jquick-pdf 超详细入门教程:Java 轻量级 HTML 模板生成 PDF 工具
java·开发语言
八年。。28 分钟前
WSL学习(三)——搭建Linux + C++ + SOME/IP 基础开发环境
开发语言·笔记·ubuntu
孙启超34 分钟前
【AI开发之Rust】第 6 课:结构体、枚举与方法 —— 开始定义自己的类型
开发语言·人工智能·后端·ai·rust
电商API_180079052471 小时前
电商平台数据分析实战_帖子
开发语言·爬虫·python·数据采集·京东
传奇开心果编程1 小时前
【Rust入门知识点学与练】第36课:所有权——移动、借用、Copy、切片
开发语言·学习·rust
传奇开心果编程2 小时前
【Rust入门知识点学与练】第35课:工具链与反馈环——先学会读编译器在说什么
开发语言·学习·rust
重生之小比特2 小时前
【Java SE】字符串 - String类
java·开发语言·intellij-idea
lsswear10 小时前
Python 并发 线程
开发语言·python