React
报错:
'React' must be in scope when using JSX react/react-in-jsx-scope
意思是在使用JSX
时,没有引入React
,比如像这样:
import { useState } from 'react';
const App = () => {
const [count, setCount] = useState(0);
return <>
<h3>点击了{count}次</h3>
<button onClick={() => {setCount(count + 1)}>click me</button>
</>
}
在使用import
引入时,没有引入React
。所以在被Eslint
的"plugin:react/recommended"
检查时,就会报错。
于是很多人就选择引入的时候加上React
,这样
import React, { useState } from 'react';
这样确实不报错了,但是他们忽略了一个版本事实:
在React@17
以后,是不需要再手动去引入React
的。因为该版本之后加入了react/jsx-runtime
,会自动对JSX
进行解析。
现在报错,就是因为eslint
中的extends
中没有加入这个runtime
,加上就可以了文章来源:https://www.toymoban.com/news/detail-618159.html
// .eslintrc.js
module.exports = {
// ...
extends: [
"eslint:recommended",
"plugin:react/recommended",
// 加上这一条
"plugin:react/jsx-runtime"
]
// ...
}
问题解决。文章来源地址https://www.toymoban.com/news/detail-618159.html
到了这里,关于【React】‘React‘ must be in scope when using JSX react/react-in-jsx-scope的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!