首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vetur/Eslint/VS代码-不能为.vue文件设置括号之间的空格

Vetur/Eslint/VS代码-不能为.vue文件设置括号之间的空格
EN

Stack Overflow用户
提问于 2020-04-02 13:33:40
回答 3查看 5.6K关注 0票数 5

我不知道如何为函数括号之间的空格设置配置。我已经将它设置为everywhere为true,但是当我保存一个.vue文件时,空格就被删除了--删除后,它被高亮显示为错误(Missing space between function parentheses)。它发生在script部分。在.js文件空间中添加了,但也突出显示为错误,这一次.Unexpected space between function parentheses?!有一些设置的配置(我现在无法重新创建)时,在保存空间时添加了片刻,然后在.vue文件中再次删除。

我的settings.json

代码语言:javascript
运行
复制
"vetur.format.defaultFormatter.js": "prettier", // tried both prettier and typescript
// "vetur.format.defaultFormatter.js": "vscode-typescript", // tried both prettier and typescript
"javascript.format.insertSpaceBeforeFunctionParenthesis": true,
"typescript.format.insertSpaceBeforeFunctionParenthesis": true,
"vetur.format.defaultFormatterOptions": {
    "prettier": {
        "singleQuote": true,
        "spaceBeforeFunctionParen": true,
        "eslintIntegration": true,
    },
    "vscode-typescript": {
        "singleQuote": true,
        "spaceBeforeFunctionParen": true,
        "eslintIntegration": true,
    }
},

.eslintrc.js

代码语言:javascript
运行
复制
module.exports = {
    root: true,
    env: {
        node: true
    },
    'extends': [
        'plugin:vue/essential',
        '@vue/standard'
    ],
    rules: {
        'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
        'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',          
        "space-before-function-paren": ["error", "always"], //setting this to 'never' removes the error highlight in vue files, not js files
    },
    parserOptions: {
        parser: 'babel-eslint',
        sourceType: "module"
    }
}

我阅读了无数个问题,并在我在答案中找到的每一个可能的设置中设置了函数括号之间的空格。尽管如此,衬里过程还是找到了一种忽略所有这些设置并实现不同设置的方法。更别提它突出显示了与自动格式化不一致的错误。还有其他我还没找到的场景吗?

EN

回答 3

Stack Overflow用户

发布于 2020-04-04 19:12:23

试试这个:

代码语言:javascript
运行
复制
npm install prettier@v1.19.1 --save-dev --save-exact

然后重新启动与代码。

最近刚刚更新到v2,如果您的项目没有在本地安装更漂亮的版本,它将使用VS代码的版本,这很可能是最新版本。在更漂亮的v2中,预函数之前的空间pre已经成为默认的,因此将应用于没有安装更漂亮的pre v2的本地版本的所有项目。对我来说,使用任何配置组合似乎都不起作用--就像忽略了所有的配置组合一样。希望这能有所帮助。

票数 3
EN

Stack Overflow用户

发布于 2020-04-06 16:12:25

在更漂亮的v2之前,它似乎不支持空间先功能-paren规则。因此,我们应该关闭上述规则,以解决冲突。

尝尝这个

代码语言:javascript
运行
复制
module.exports = {
  rules: {
    'space-before-function-paren': 'off'
  }
}

在位于项目根目录中的ESLint配置文件(如.eslintrc.js)中。

然后,我们应该在VS代码中向settings.json添加以下内容。

代码语言:javascript
运行
复制
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.fixAll": true
  },

最后但同样重要的是,在VS代码中禁用Vetur扩展可能是一个更好的选择。

票数 3
EN

Stack Overflow用户

发布于 2022-03-11 19:43:44

对于vetur和ESLint文本,我也有同样的问题。随后在settings.json修复了它。默认情况下它更漂亮。

代码语言:javascript
运行
复制
"vetur.format.defaultFormatter.js": "prettier-eslint",
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60992811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档