React - 打印导入组件函数的内容
React - print content of imported component function
尝试通过 div将 HTML 分成更小的部分来拆分一些 HTML 块,位于组件文件夹中。 (我知道,HTML 并不是真正的 html,它是 JSX)。
我试图实现的结果是让导入的组件 [Navigation] 呈现其内容。
我知道可能有代码拆分工具。
问题: 为什么代码不呈现 div 导航内容?
Navigation.js
import React from 'react';
export default function Navigation() {
return (
<div className="navigation">
<ul>
<li>
<a href="http://www.google.com">Google</a>
</li>
</ul>
</div>
);
}
App.js
import React from 'react';
import './App.css';
import Navigation from './components/Navigation';
class App extends React.Component {
render() {
Navigation();
return (
<div>
Hello from component - Class!
</div>
);
}
}
export default App;
Index.js
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
ReactDOM.render(<App />, document.getElementById('root'));
serviceWorker.unregister();
您的组件未呈现,因为您在 return 语句之外调用了 de 函数。
For a component render, you need to return the component inside the
render function;
示例:
render () {
return <Component/>
}
当你调用这个时:
render() {
Navigation(); // see, the navigation is outside the return statemente
return (
<div>
<p>Hello from component - Class!</P>
</div>
)
}
试试这个:
import React from 'react';
import './App.css';
import Navigation from './components/Navigation';
class App extends React.Component {
render() {
return (
<div>
<Navigation/>
<p>Hello from component - Class!</P>
</div>
)
}
}
export default App;
尝试通过 div将 HTML 分成更小的部分来拆分一些 HTML 块,位于组件文件夹中。 (我知道,HTML 并不是真正的 html,它是 JSX)。
我试图实现的结果是让导入的组件 [Navigation] 呈现其内容。
我知道可能有代码拆分工具。
问题: 为什么代码不呈现 div 导航内容?
Navigation.js
import React from 'react';
export default function Navigation() {
return (
<div className="navigation">
<ul>
<li>
<a href="http://www.google.com">Google</a>
</li>
</ul>
</div>
);
}
App.js
import React from 'react';
import './App.css';
import Navigation from './components/Navigation';
class App extends React.Component {
render() {
Navigation();
return (
<div>
Hello from component - Class!
</div>
);
}
}
export default App;
Index.js
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
ReactDOM.render(<App />, document.getElementById('root'));
serviceWorker.unregister();
您的组件未呈现,因为您在 return 语句之外调用了 de 函数。
For a component render, you need to return the component inside the render function;
示例:
render () {
return <Component/>
}
当你调用这个时:
render() {
Navigation(); // see, the navigation is outside the return statemente
return (
<div>
<p>Hello from component - Class!</P>
</div>
)
}
试试这个:
import React from 'react';
import './App.css';
import Navigation from './components/Navigation';
class App extends React.Component {
render() {
return (
<div>
<Navigation/>
<p>Hello from component - Class!</P>
</div>
)
}
}
export default App;