2016-12-14 68 views
5

在VS編碼中編輯函數時,有沒有辦法在括號之前禁用空格?VS代碼 - 函數括號之前的空格

可以說我有一個功能

function render() { 
    // some code here 
} 

當我開始編輯它,VS代碼括號之前移除空間和轉換此代碼:

function render() { 
    // some code here 
} 

有沒有一種方法來禁用此行爲?

回答

1

我發現我有"editor.formatOnType": true設置啓用。這是編輯器在鍵入時自動格式化代碼的原因。禁用它有助於解決問題。

4

我在VSCode團隊。作爲VSCode 1.8,這格式化選項,不支持開箱即用,但我們正在跟蹤功能:https://github.com/Microsoft/vscode/issues/15386https://github.com/Microsoft/TypeScript/issues/12234

作爲一種變通方法,請嘗試以下操作:

  • 安裝eslint extensionext install eslint
  • 添加"eslint.autoFixOnSave": true到工作區或用戶設置
  • 在項目的根目錄,創建一個.eslintrc.json有:

    { 
        ... 
        "rules": { 
         ... 
         "space-before-function-paren": "error" 
        } 
    } 
    

    eslint擴展可以使用create .eslintrc.json命令爲您創建啓動程序.eslintrc.json

這將自動格式化函數,以便在保存文件後有一個空格。

+0

謝謝你告訴這個偉大的設置。這非常有用。直到VS Code的設置不違背這些Eslint規則。這不是解決我的問題的方法,編輯器在我編輯它們時仍會格式化我的函數,然後eslint突出顯示錯誤,並且當我保存文件時,所有事情都恢復正常。這真的很煩人,很奇怪。 –

+0

這應該是upvoted更多。自動格式化代碼非常好,但自動「粘附」到eslint規範 – jschell12

0

在我的情況,我想VS代碼的正常縮進/格式化的行爲,所以我禁用了eslint警告:

在.eslintrc。js文件我輸入的規則裏面:

'rules': { 
    .... 

    //disable rule of space before function parentheses 
    "space-before-function-paren": 0 
    } 
6
  1. 在VS代碼打開文件 - >首選項 - >設置
  2. 添加到您的JSON配置:

"javascript.format.insertSpaceBeforeFunctionParenthesis": true

function render() { 
 
    // some code here 
 
}

"javascript.format.insertSpaceBeforeFunctionParenthesis": false

function render() { 
 
    // some code here 
 
}

  • 現在,您可以繼續使用自動套用格式選項"editor.formatOnType": true
  • 相關問題