VSCode中JavaScript数组自动拆分为单行元素问题求助
解决VSCode中JS数组保存后被拆成单行单元素的问题
先确认用的是哪个格式化工具
打开VSCode设置(快捷键Ctrl+,/Cmd+,),搜索Default Formatter,查看当前选中的是Prettier还是内置的JS格式化工具,不同工具的配置逻辑不一样。
用Prettier的话这么调
方法1:项目级配置(优先推荐)
在项目根目录新建或修改.prettierrc文件,写入以下配置:
{ "printWidth": 200, // 调大行宽,只要数组一行长度不超过这个值就不会被拆分 "arrayWrapThreshold": Infinity // 强制忽略元素数量,始终保持数组元素在一行 }
方法2:VSCode全局设置
直接在VSCode设置里搜索对应选项修改:
Prettier: Print Width:把数值改大(比如200、300,根据你的数组长度调整)Prettier: Array Wrap Threshold:设置为Infinity
用ESLint的话这么改
如果项目用ESLint做格式化,修改项目根目录的.eslintrc.js(或对应格式的配置文件),在rules节点添加规则:
module.exports = { // 其他已有配置... rules: { "array-element-newline": ["error", "never"] // 禁止数组元素自动换行 // 若需要灵活规则,也可设为{ "multiline": true, "minItems": 10 }——仅当数组本身有多行代码或元素超过10个时才换行 } }
临时给单个数组禁用格式化
如果只想保留某一个数组的单行格式,直接在数组前加注释即可:
// prettier-ignore const bigArray = [1,2,3,4,5,...]; // Prettier不会处理这个数组的换行 // eslint-disable-next-line array-element-newline const bigArray = [1,2,3,4,5,...]; // ESLint不会处理这个数组的换行
内容的提问来源于stack exchange,提问作者HTMLMonger
相关产品推荐
相关产品推荐

