vscode 中 格式化 vue 如何不自动换行

发布于 2022-09-07 11:24:51 字数 349 浏览 14 评论 0

目前格式化的时候经常会自动换行
eg:

return wepy.chooseImage({
    count: 1,
    sizeType: "original"
}).then(res => res.tempFilePaths[0]);

会被格式化为

return wepy
    .chooseImage({
        count: 1,
        sizeType: "original"
    })
    .then(res => res.tempFilePaths[0]);

如何才能关掉自动换行的呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

晚雾 2022-09-14 11:24:51

楼上的配置已经失效。
看看我js的自动格式化

  this.xjLink =
    h5 +
    '/aaa/bbb/home?token=' +
    token +
    '';

看的我尴尬癌都犯了,真心受不了,这开发不是哪抽疯了。
真实原因是:默认对JS使用了prettier.
user config 增加以下解决
{

"vetur.format.defaultFormatter.js": "vscode-typescript",

}

╭⌒浅淡时光〆 2022-09-14 11:24:51

2019/1/2 最新解决办法 (版本1.30.1) :

    "vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "aligned-multiple"
        },
        "prettyhtml": {
            "printWidth": 100,
            "singleQuote": false,
            "wrapAttributes": false,
            "sortAttributes": false
        }
    },
    "vetur.format.defaultFormatter.html": "js-beautify-html",

即可使得 vue 元素不再折行 ;

关于 "vetur.format.defaultFormatterOptions""vetur.format.defaultFormatter.html" , 在楼上其他大神的答案中已有讲解, 这里就不再啰嗦 ;

奈何桥上唱咆哮 2022-09-14 11:24:51

// 对属性进行换行。
// - auto: 仅在超出行长度时才对属性进行换行。
// - force: 对除第一个属性外的其他每个属性进行换行。
// - force-aligned: 对除第一个属性外的其他每个属性进行换行,并保持对齐。
// - force-expand-multiline: 对每个属性进行换行。
// - aligned-multiple: 当超出折行长度时,将属性进行垂直对齐。

  "vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "auto",
        }
     },
玩套路吗 2022-09-14 11:24:51

默认alt+z 试试

吐个泡泡 2022-09-14 11:24:51
  "vetur.format.defaultFormatter.html": "js-beautify-html",
  "vetur.format.defaultFormatterOptions": {
    "js-beautify-html": {
      "wrap_attributes": "aligned-multiple"
    }
  },
  "vetur.format.defaultFormatter.js": "vscode-typescript",

(vscode配置)[https://blog.csdn.net/win7583...]

相守太难 2022-09-14 11:24:51

其实去看下prettier的设置就好,不需要将vetur.format.defaultFormatter.js改成vscode-typescript

"prettier.singleQuote": true, // 用单引号
"prettier.semi": true, // 句末加分号
"prettier.printWidth": 200, // 换行字符串阈值
"prettier.trailingComma": "none", // 最后一个对象元素加逗号
"prettier.arrowParens": "avoid", // (x) => {} 是否要有小括号
"prettier.proseWrap": "preserve", // 是否要换行
"vetur.format.defaultFormatter.js": "prettier", // vetur 使用 prettier格式化代码
孤檠 2022-09-14 11:24:51

这是因为在VSCode1.7.2中替换了内置格式化插件。解决办法是在VScode设置(setting.json)中,配置如下规则

{
   "prettier.singleQuote": true,
   "prettier.semi": false,
   "vetur.format.defaultFormatter.html": "js-beautify-html",
   "vetur.format.defaultFormatterOptions": {
      "wrap_attributes": "force-aligned"
    }
}

即可解决题主问题。详情见 vuejs/vetur#476

兲鉂ぱ嘚淚 2022-09-14 11:24:51

图片描述

有点受不了了,
能不能让他 不管 换行呢。
我把 prettier.printWidth 设置 短了 他就 换行我不想换行的,
我把 prettier.printWidth 设置 长了 他给我来个 一行
受不鸟了。
谁来帮帮我

机场等船 2022-09-14 11:24:51

设置 printWidth: 500 可以

"prettyhtml": {
            "printWidth": 500,
            "singleQuote": false,
            "wrapAttributes": false,
            "sortAttributes": true,
            "useTabs": true,
            "proseWrap": "preserve",
        }
江挽川 2022-09-14 11:24:51
"beautify.config": { "brace_style": "none,preserve-inline", "indent_size": 2 }

这样就不换行了,但是感觉格式化的不彻底,有没有人有思路

江挽川 2022-09-14 11:24:51

如果是.vue文件,vscode中的setting.json这样配置即可。

"vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "auto"
        }
    },
    "vetur.format.defaultFormatter.html": "js-beautify-html",
    "vetur.format.defaultFormatter.js": "vscode-typescript"

记得装一下vetur和beautify插件。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文