How to auto indent jsx in VSCode

拈花ヽ惹草 提交于 2019-12-03 08:33:38

问题


VSCode seems doesn't auto indent HTML elements in jsx?

Is there any way to fix it.


Update:

In Atom:

When I input <div>, atom will show:

After I press the return key, the result is(pay attention to the location of the cursor):

While in VSCode:


回答1:


Try changing the language mode to JavaScript React.

  1. Open the commands palette.
  2. Type change language mode
  3. Press Enter
  4. Type javascript react
  5. Press Enter

Once that's done, you'll see the JavaScript React mode in the bottom left corner.

Once you're in that mode, try again to format the document.




回答2:


Change the language to Javascript React (see other answers for instructions) then use the following command:

alt + shift + f



回答3:


1. Add user settings to

"files.associations": {
    "*.js": "javascriptreact"
},

2. Install plugin

Auto Install Tag

And Reload. It will fix your issue.

BTW, I think there's a bug now. Without component props auto indent work well, but with props, it won't work now.

<Component>Enter

===>

<Component>
    :
</Component> 

But

<Component someProps={10}}Enter

===>

<Component someProps={10}>
:</Component>

Anyone who can fix this please help me :) I am using on mac




回答4:


use the extension "Prettier - Code formatter", by Esben Petersen. it will auto format on save, assuming your file is a jsx file.



来源:https://stackoverflow.com/questions/40498622/how-to-auto-indent-jsx-in-vscode

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!