如何通过使用 Eslint + Prettier 删除空行来区分 JSON 代码格式
How to discriminate JSON code formatting by removing empty lines using Eslint + Prettier
背景
创建测试文件时,通常会复制和粘贴 JSON 对象(即使您使用自己的工厂)。我发现如果您修改架构,有时会更容易在键 + 对上查找和替换。问题是 IDE 中的查找和替换(除非您可以自定义它...VSCode、Intellij 等?)不会执行自动 post-保存清理如果您最初替换的内容在 JSON 对象中产生了一个空行。
询问
有没有办法配置 eslint
and/or prettier
在自动保存时它会通过删除空行来压缩你的 JSON 对象?
(如果没有,有人有 regex 可以 区分代码块/闭包与 JSON 对象 并删除所有空行?)
示例:JSON 个对象在 JavaScript 个文件中
格式化前
const blah = {
EffectiveDate: '2019-01-01',
DiscontinueDate: '2019-12-12',
MarkDownCode: 'W'
}
格式化后
const blah = {
EffectiveDate: '2019-01-01',
DiscontinueDate: '2019-12-12',
MarkDownCode: 'W'
}
据我所知,你只能设置 prettier 将多个连续的空行压缩为一个空行。
不过,您可以做的是使用任何具有查找和替换功能的文本编辑器,该功能接受正则表达式,然后替换:
^\n
对于空字符串:
''
通常可以使用Ctrl+H
打开查找&替换。
此外,我想补充一点,如果您非常愿意实现此任务的自动化,您可以查看代码编辑器的扩展,它允许某种类型的 "Run on Save" 功能,然后添加一个小脚本来擦除那些新线路。
背景
创建测试文件时,通常会复制和粘贴 JSON 对象(即使您使用自己的工厂)。我发现如果您修改架构,有时会更容易在键 + 对上查找和替换。问题是 IDE 中的查找和替换(除非您可以自定义它...VSCode、Intellij 等?)不会执行自动 post-保存清理如果您最初替换的内容在 JSON 对象中产生了一个空行。
询问
有没有办法配置 eslint
and/or prettier
在自动保存时它会通过删除空行来压缩你的 JSON 对象?
(如果没有,有人有 regex 可以 区分代码块/闭包与 JSON 对象 并删除所有空行?)
示例:JSON 个对象在 JavaScript 个文件中
格式化前
const blah = {
EffectiveDate: '2019-01-01',
DiscontinueDate: '2019-12-12',
MarkDownCode: 'W'
}
格式化后
const blah = {
EffectiveDate: '2019-01-01',
DiscontinueDate: '2019-12-12',
MarkDownCode: 'W'
}
据我所知,你只能设置 prettier 将多个连续的空行压缩为一个空行。
不过,您可以做的是使用任何具有查找和替换功能的文本编辑器,该功能接受正则表达式,然后替换:
^\n
对于空字符串:
''
通常可以使用Ctrl+H
打开查找&替换。
此外,我想补充一点,如果您非常愿意实现此任务的自动化,您可以查看代码编辑器的扩展,它允许某种类型的 "Run on Save" 功能,然后添加一个小脚本来擦除那些新线路。