How to make VSCode play nice with React syntax? - reactjs

I installed all recommended extensions, still VSCode won't recognize any React syntax.
What must i do to make VSCode play nice with React (js / jsx) syntax?

The plugin that was causing issues for me here actually Babel ES6/ES7 as mentioned in another comment.
Once removing that plugin and reloading, it all worked well

VS Code has built-in support for JSX and TSX. You do not need to install any extensions unless you want additional functionality
As the OP noted, the problem was one of their extensions was inserting spaces around the tags. I suspect it was the js css html formatter extensions since this has caused problem for people in the past

1.Delete all html-js-css formatters.
2.If you want to work with this formatters,
install prettier.
Right click and select format document with and then select prettier. Repeat this every saving.

This happens because you use some HTML formatter, so first go to your react native or js extension settings(simple click the bottom bar language mod), and check the HTML fomatter in that setting page.
"[html]": {
"editor.defaultFormatter": "apility.beautify-blade"
}
remove this, and you are good to go.

Afaik, vscode does not understand JSX by default. Installing jsx plugin should help there.

Install Babel ES6/ES7 extension from here.
Works like charm.

Related

vscode can't regonize css nested syntax after using react-css-module with postcss-nested

I'm developing a react project. I use postcss-nested plugin to support css nested rule, and use babel-plugin-react-css-modules to support css modules in react. Finally, the css styles can work well so I'm sure there is no problem with these 2 plugins. But it seems that the vscode can't regonize the css nested rules. It display an underline to give an warning, like this:
Now vscode can't give tips when coding. I have to type the css property names completely. Is there any idea about my problem?
I've also ran into this issue while utilizing nesting. Because nesting is not officially apart of vanilla css VS code is automatically spitting out errors. The best way to fix this issue is to install the VS Code plugin https://marketplace.visualstudio.com/items?itemName=csstools.postcss. this will fix up those nasty little errors. Let me know if that helps you out.

Make VSCode apply syntax highlighting to .tsx files

Trying to start a gatsby+react+typescript project and VSCode will only apply syntax highlighting to the HTML in my .tsx files. The typescript code remains a single color. How do I fix this?
Note: I have no plugins installed at the moment and the highlighting works if the file type is set to .jsx
Clicking on the language button in the lower right corner and selecting typescript react fixed the problem.
I faced same problem, even "Typescript React" was selected as the language. I had to click and select the language pack version before getting syntax highlighting working.
In my case "JavaScript and TypeScript Nightly" extension was causing the problem.
I had the same problem even when "Typescript React" was selected.
I disabled all the extensions and problem solved.
Then I enabled each extension individually and I've found out "JavaScript and TypeScript Nightly" was causing the problem.
I hope this will help someone.
I solved this issue just reloading vscode as required by JavaScript and TypeScript Nightly extension, once it was reload I just double checked that Typescript react was selected and the problem was resolved.
Seems like the real problem was that the library JavaScript and TypeScript Nightly was not fully reloaded.

How to comment/uncomment jsx (using keyboard `cmd /`) in VSC?

Can anyone tell me how to comment JSX code in VSC?
I looked at the articles listed at the bottom, none of them seem to give a concrete solution, and the ticket appeared to have been closed, claiming that the commenting/uncommenting function has been properly resolved on VSC. However, I am still having troubles after trying out the followings as suggested:
disable sublime-babel extension on VSC
Update my language to Javascript react
In user setting, added the followings:
"emmet.syntaxProfiles": { "javascript": "jsx" },
"files.associations": {
"*.js": "javascriptreact"
},
Any clue would be really appreciated. Exhaused all tricks. Thanks!
How to you comment jsx code out in .js files in VSCode?
https://github.com/Microsoft/vscode/issues/6461
Select the text to be commented then press Ctrl+K and Ctrl+C.
Did you try to install React or Babel plugin?
This might sound dumb but, have you tried re-installing VSCode? Commenting out JSX in a .js file works fine for me without any plugins. (I use windows)
I was having this issue and for me the problem was the extension Babel ES6/ES7.
I've uninstalled that extension.
If that doesn't help you could try changing the Language Mode to JavaScript React

Is there a way to install JSX syntax highlights/syles for Notepad++?

I'm using Notepad++ and I just started to learn React js and the JSX syntax extension but not having the styling makes it difficult to read. I'm not sure If I could implement the styles into Notepad++ or even if it's possible to import a JSX pre-processor or plugin. I was looking into installing Babel but I would also have to install NPM and Node js ect. and I'm not sure if that would be the best approach. Or is there a different IDE I should be using?
I was able to find the answer to my own problem. I was viewing the code in the html language because the js was included in a .html file. When I switch the language to Javascript the styles looked perfectly fine. The first <h2> tag in JSX threw off the rest of the code styles. Beginner's mistake.

How to configure atom-beautify package to format with babel/jsx javascript files?

I searched for a package to auto-indent and beautify my React/babel code. I just tried atom-beautify which seems to have good feeback on Atom.
But the result on an usual babel file is not good enough: "HTML tag" doesn't indent as wanted. Has anyone tried to use atom-beautify with babel?
I currently use the plugins language-babel, react, and autoclose-html to handle this for me with no issues.
https://atom.io/packages/autoclose-html
https://atom.io/packages/language-babel
https://atom.io/packages/react
Hope this helps!
Atom beautify did not support jsx at that time. it does now :)
I already faced the same problem and ended using prettier-atom . It works really nice with HTML tags.
I use Prettier (https://prettier.io/) to re-write my code into best practices, so all the team can write code as if only one person has written it all. Supports JSX, and recently, even TypeScript, CSS, SCSS, ..
I use miniprettier, it's listed on Prettier official site as a recommended package.
It's like prettier-atom but without all the dependencies. I love it! It works very well on JSX. I use atom-beautify for other filetypes (e.g. JSON, pure HTML, JS).

Resources