I am new to react and I tried the following code
person.js
JavaScript
x
3
1
const element = <h1>Hello world</h1>;
2
export default element;
3
App.js
JavaScript
1
26
26
1
import React, { Component } from 'react';
2
import ReactDOM from 'react-dom'
3
import Person from '../src/person/person';
4
5
6
7
function Hello() {
8
return Person.element;
9
}
10
11
12
13
class App extends Component {
14
15
render() {
16
17
return (
18
<div className="App">
19
<Hello></Hello>
20
</div>
21
);
22
}
23
}
24
25
export default App;
26
But getting the below errors
work/my-app/src/person/person.js 3:17 error ‘React’ must be in scope when using JSX react/react-in-jsx-scope
When I changed to a simple hello word as below, then it works fine.
person.js
JavaScript
1
3
1
const element = 'hello world';
2
export default element;
3
I tried with different ways by checking different forum
- importing the ReactDom
- in person.js changed to module.exports=element
Advertisement
Answer
The use of HTML within JS code is known as JSX. The <h1>...</h1>
is JSX. You need to import React
before you use JSX. Simply shift the import statements before any use of JSX.
person.js
JavaScript
1
7
1
import React, { Component } from 'react';
2
import ReactDOM from 'react-dom'
3
import Person from '../src/person/person';
4
5
const element = <h1>Hello world</h1>;
6
export default element;
7