avtomon / yaml.js
此软件包最新版本(dev-master)没有提供许可信息。
YAML 解析 & 保存
dev-master
2020-06-15 13:16 UTC
This package is auto-updated.
Last update: 2024-09-15 23:21:47 UTC
README
yaml
是一个用于 YAML(一种人性化的数据序列化标准)的 JavaScript 解析器和字符串化工具。它支持使用所有版本的 YAML 以及所有常见的数据模式进行解析和字符串化。作为一个特别突出的特性,yaml
完全支持读取和写入 YAML 文档中的注释和空行。
该库遵循 ISC 开源许可协议发布,代码在 GitHub 上可用。它没有外部依赖,支持 Node.js 6 及以上版本,以及从 IE 11 开始的所有浏览器。
出于版本控制的目的,任何破坏此处记录的任何端点或 API 的更改都将被视为 semver-major 破坏性更改。未记录的库内部可能在不同版本之间发生变化,并且先前 API 可能被弃用(但不会删除)。
有关更多信息,请参阅项目的文档站点: eemeli.org/yaml
安装
npm install yaml
注意:yaml
0.x 和 1.x 的实现相当不同。有关早期 yaml
的信息,请参阅 tj/js-yaml。
API 概览
yaml
提供的 API 分为三层,具体取决于您需要深入到何种程度:解析 & 字符串化、文档 以及 CST 解析器。第一层具有最简单的 API 并“直接使用”,第二层提供了库支持的所有功能以及合理的 AST,第三层最接近 YAML 源,使其快速、原始且简单。
import YAML from 'yaml' // or const YAML = require('yaml')
解析 & 字符串化
YAML 文档
YAML.createNode(value, wrapScalars, tag): Node
YAML.defaultOptions
YAML.Document
YAML.parseAllDocuments(str, options): YAML.Document[]
YAML.parseDocument(str, options): YAML.Document
import { Pair, YAMLMap, YAMLSeq } from 'yaml/types'
CST 解析器
import parseCST from 'yaml/parse-cst'
YAML.parse
# file.yml YAML: - A human-readable data serialization language - https://en.wikipedia.org/wiki/YAML yaml: - A complete JavaScript implementation - https://npmjs.net.cn/package/yaml
import fs from 'fs' import YAML from 'yaml' YAML.parse('3.14159') // 3.14159 YAML.parse('[ true, false, maybe, null ]\n') // [ true, false, 'maybe', null ] const file = fs.readFileSync('./file.yml', 'utf8') YAML.parse(file) // { YAML: // [ 'A human-readable data serialization language', // 'https://en.wikipedia.org/wiki/YAML' ], // yaml: // [ 'A complete JavaScript implementation', // 'https://npmjs.net.cn/package/yaml' ] }
YAML.stringify
import YAML from 'yaml' YAML.stringify(3.14159) // '3.14159\n' YAML.stringify([true, false, 'maybe', null]) // `- true // - false // - maybe // - null // ` YAML.stringify({ number: 3, plain: 'string', block: 'two\nlines\n' }) // `number: 3 // plain: string // block: > // two // // lines // `
由提供