Skip to the content.

@miyaneee/rollup-plugin-json5

npm npm type definitions npm bundle size GitHub

🍣 一个将 .json5 文件转换为 ES6 模块的 rollup 插件。这个插件和官方提供的解析 json 的插件非常相似,除了它的解析器。

简体中文 English

环境需求

需要 Node(v8.0.0+) 和 Rollup v1.20.0+。

安装

使用 npm 安装:

npm install @miyaneee/rollup-plugin-json5 -D

或者使用 yarn 安装:

yarn add @miyaneee/rollup-plugin-json5 -D

使用

创建一个 rollup.config.js 配置文件 并引入插件:

import json5 from '@miyaneee/rollup-plugin-json5'

export default {
  input: 'src/index.js',
  output: {
    dir: 'output',
    format: 'cjs'
  },
  plugins: [json5()]
}

接着通过 命令行 或者 API 调用 rollup

现在,你可以引入 .json 文件了:

import json from 'path/to/json5.json5'
console.log(json)

选项

compact

类型:Boolean
默认值:false

如果为 true, 会令插件忽视 indent 并生成最小的代码。

exclude

类型:String | Array[...String]
默认值:null

一个 最小匹配表达式,或者一个表达式数组,它会指定哪些文件会被忽略。默认情况下没有文件会被忽略。

include

类型:String | Array[...String]
默认值:null

一个 最小匹配表达式,或者一个表达式数组,它会指定哪些文件会被包括。默认情况下所有文件都会被包括。

indent

类型:String
默认值:'\t'

为默认导出指定缩进。

namedExports

类型:Boolean
默认值:true

如果为 true,令插件为每个 JSON 对象属性生成命名导出。

preferConst

类型:Boolean
默认值:false

如果为 true,令插件使用 var 或者 const 将属性定义为变量。与摇树优化相关。

includeArbitraryNames

类型:Boolean
默认值:false

如果本选项设为 true 并且 namedExports 也被设为 true,那么就会利用“任意模块命名空间标识符名称”特性,为 JSON 对象中非有效标识符属性生成一个命名导出。

reviver

类型:((this: any, key: string, value: any) => any) | null

查看 JSON5.parse()

许可证

MIT