DEV Community

Discussion on: You no longer need to import React from 'react'

Collapse
 
seanmclem profile image
Seanmclem

When using Vite - it still seems to make me use it on react 17

Collapse
 
danishaft profile image
ejeh daniel

yeah but for the main component and not very component file

Collapse
 
titungdup profile image
dhondup

Hi @seanmclem, It seems like Esbuild, which Vite is based on, doesn't use Babel to compile JSX and I think the new JSX transform requires Babel for all the JSX conversion. I'll get back to you if I can confirm this. Thanks for pointing it out.

Collapse
 
titungdup profile image
dhondup • Edited

I'm very positive Babel is the reason.

Thread Thread
 
antonofthewoods profile image
Anton Melser • Edited

Not just babel. You can use it with vite (with TS, for example). reactjs.org/blog/2020/09/22/introd...

"We’d like to thank Babel, TypeScript, Create React App, Next.js, Gatsby, ESLint, and Flow maintainers for their help implementing and integrating the new JSX transform. "

If you are getting an eslint error on one of the other platforms (like TS), you can just (from github.com/jsx-eslint/eslint-plugi...

If you are using the new JSX transform from React 17, you should disable this rule by extending react/jsx-runtime in your eslint config (add "plugin:react/jsx-runtime" to "extends").