我是一个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 -in- JSX -scope时,'React'必须在作用域中


当前回答

在你的eslint配置文件中添加"plugin:react/jsx-runtime"到extends,参考react-in-jsx-scope

其他回答

在我的例子中,我必须在src文件夹的index.js文件中包含这两行代码。

import React from 'react'
import ReactDOM from 'react-dom'

在你的情况下,这可能是不同的。 如果使用基于类的组件,则可能需要包含组件。

import React, { Component }  from 'react';

或者,如果你正在使用eslint,你可以从上面的注释中得到一些解决方案。

知道更多

导入行应该是:

import React, { Component }  from 'react';

注意大写的R代表React。

对于那些仍然没有得到公认解决方案的人:

Add

import React from 'react'
import ReactDOM from 'react-dom'

在文件的顶部。

下面这行为我解决了这个问题。

/** @jsx jsx */
import {css, jsx} from "@emotion/react";

希望这对你有帮助。

将react-scripts升级到最新版本解决了我的问题。

我使用的是react-scripts 0.9.5版本,并将其升级到5.0.1。