Frequently Asked Questions
What is the purpose of eslint-react
?
The purpose of eslint-react
is to provide ESLint plugins for not just for React DOM but also other libraries and frameworks that use React as a UI runtime. Currently, it provides:
eslint-plugin-react-x
- Core rules (DOM Irrelevant, Render Target Agnostic, Formatting Independent).eslint-plugin-react-dom
- DOM specific rules for React DOM.eslint-plugin-react-debug
- Debugging rules.eslint-plugin-react-hooks-extra
- Extra React Hooks rules.eslint-plugin-react-naming-convention
- Naming convention rules.
What are the differences between eslint-plugin-react-x
and eslint-plugin-react
?
The main difference is that eslint-plugin-react-x
can be used with any render target library or framework, while eslint-plugin-react
will always assume that you are using React DOM, even if you are working on a project that only uses React Three Fiber (you can learn more about this through encounters like 1 and 2 ).
Is eslint-plugin-react-x
a replacement for eslint-plugin-react
?
No, eslint-plugin-react-x
is not a drop-in replacement for eslint-plugin-react
. But you can still use it as a replacement if you wish. Keep in mind that some rules may behave differently, and that the rules provided by eslint-react
are more in line with react.dev. This is because eslint-plugin-react-x
will consider react.dev instead of eslint-plugin-react
as the source of truth.