搜索

首页  >  问答  >  正文

在JSX中使用'React'时,必须包含在范围内 react/react-in-jsx-scope

我是一个Angular开发者,对React还不熟悉,这是一个简单的React组件,但是不起作用。

import react, { Component } from 'react';
import { render } from 'react-dom';

class TechView extends Component {

    constructor(props){
       super(props);
       this.state = {
           name:'Gopinath'
       }
    }
    render(){
        return(
            <span>hello Tech View</span>
        );
    }
}

export default TechView;

错误: 在使用JSX时,'React'必须在作用域内 react/react-in-jsx-scope

P粉364642019P粉364642019504 天前698

全部回复(2)我来回复

  • P粉953231781

    P粉9532317812023-09-19 00:40:20

    .eslintrc.js / .eslintrc.json中添加以下设置以忽略这些错误:

    rules: {
        // suppress errors for missing 'import React' in files
       "react/react-in-jsx-scope": "off",
        // allow jsx syntax in js files (for next.js project)
       "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }], //should add ".ts" if typescript project
      }

    为什么? 如果您使用的是NEXT.js,则无需在文件顶部导入React,nextjs会为您完成。

    参考:https://gourav.io/blog/nextjs-cheatsheet(Next.js速查表)

    回复
    0
  • P粉183077097

    P粉1830770972023-09-19 00:36:48

    导入行应该是:

    import React, { Component }  from 'react';
    

    注意React的大写R。

    回复
    0
  • 取消回复