【译】使用json2md将JSON转换为Markdown

栏目: 后端 · 前端 · 发布时间: 4年前

内容简介:我喜欢在我的项目中同时使用JSON和Markdown。每个npm包都需要一个package.json文件,该文件先让是用JSON格式编写的。另外,好的项目需要配套好的文档。我喜欢使用Markdown写文档。但我真的不写Markdown文件,我写的是文档,但他们存储在代码中(JSDoc注释)。我使用这就是我创建json2md的原因,它是JSON和Markdown语言之间的桥梁,此包与我的Blah模版集成,我可以使用JSON 在我的package.json (或其他JSON文件)中编写自定义内容,来定制输入在最
【译】使用json2md将JSON转换为Markdown

我喜欢在我的项目中同时使用JSON和Markdown。每个npm包都需要一个package.json文件,该文件先让是用JSON格式编写的。另外,好的项目需要配套好的文档。我喜欢使用Markdown写文档。

但我真的不写Markdown文件,我写的是文档,但他们存储在代码中(JSDoc注释)。我使用 Blah 自动生成Markdown文档的,然而有时候这些文档模版不够。

这就是我创建json2md的原因,它是JSON和Markdown语言之间的桥梁,此包与我的Blah模版集成,我可以使用JSON 在我的package.json (或其他JSON文件)中编写自定义内容,来定制输入在最终文档结果。

如何使用 使用 npm i json2md 在本地下载并安装 json2md 软件包。然后你可以在Node.js应用程序中,甚至客户端(浏览器)中使用它。

例如,要创建Markdown 图片 标签,你需要执行一下操作:

var json2md = require("json2md");

var myImg = json2md({
    img: {
        source: "http://example.com/image.png"
      , title: "My image"
    }
});
console.log(myImg);
复制代码

输出结果为 ![My image](http://example.com/image.png)

这是另外一个更复杂的示例:

// Dependencies
var json2md = require("json2md");

console.log(json2md([
    { h1: "JSON To Markdown" }
  , { blockquote: "A JSON to Markdown converter." }
  , { img: [
        { title: "Some image", source: "https://example.com/some-image.png" }
      , { title: "Another image", source: "https://example.com/some-image1.png" }
      , { title: "Yet another image", source: "https://example.com/some-image2.png" }
      ]
    }
  , { h2: "Features" }
  , { ul: [
        "Easy to use"
      , "You can programatically generate Markdown content"
      , "..."
      ]
    }
  , { h2: "How to contribute" }
  , { ol: [
        "Fork the project"
      , "Create your branch"
      , "Raise a pull request"
      ]
    }
]));
复制代码

这将产生:

# JSON To Markdown
> A JSON to Markdown converter.

![Some image](https://example.com/some-image.png)

![Another image](https://example.com/some-image1.png)

![Yet another image](https://example.com/some-image2.png)

## Features

 - Easy to use
 - You can programatically generate Markdown content
 - ...

## How to contribute

 1. Fork the project
 2. Create your branch
 3. Raise a pull request
复制代码

但这不是全部! 您可以创建自定义转换器。 假设你有一个像 {sayHello:“World”} 这样的输入。 如果你想生成一个 Hello World! 输出,你可以这样做:

json2md.converters.sayHello = function (input) {
     return "Hello " + input "!";
};
复制代码

这基本上扩展了转换器对象并添加了自定义转换器。

在GitHub上查看 json2md 。 我确信有很多事情需要改进。 随意提问,解决问题并做出贡献!

原文地址


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

极致产品

极致产品

周鸿祎 / 中信出版社 / 2018-6 / 58.00

周鸿祎作为*知名的产品经理之一,一手打造了众多国民级的产品。他关于打造爆款的理念,比如刚需、高频、“小白”思维等,已成为网络热词而被广泛接受。 本书是周鸿祎首次系统总结其20年产品经理的心得,不仅将以往的理念进行总结、归纳,而且在与包括各方面创业者、产品经理的碰撞后,将其观念进一步升华,成为迄今为止首部将其产品理念倾囊相授的作品。一起来看看 《极致产品》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具