reactjs - reactjs中如何调用多个组件同时显示?
问题描述
我正在调用两个组件 Welcome 和 Datecomp。但是当我运行时,Welcome 组件没有显示,但 Datecomp 组件单独显示。
我正在调用两个组件 Welcome 和 Datecomp。但是当我运行时,Welcome 组件没有显示,但 Datecomp 组件单独显示。
index.js
import React from 'react';
import ReactDOM from 'react-dom';
import Welcome,{DateComp} from './Welcome';
ReactDOM.render(<Welcome/>,document.getElementById('root'));
ReactDOM.render(<DateComp/>,document.getElementById('root'));
Welcome.js
import React, { Component } from 'react';
class Welcome extends Component {
render(){
return(
<div>
<h1>Welcome User</h1>
<p>What is React? React is a declarative,efficient, and flexible
JavaScript library for <br />
building user interfaces. It lets you compose complex UIs
from small and <br />isolated pieces of code called "components".
</p>
</div>
);
}
}
class DateComp extends Component {
constructor(){
super()
var today = new Date(),
date = today.getDate()+'/'+(today.getMonth()+1)+'/'+today.getFullYear();
this.state={
currentDate:date
}
}
render(){
return(
<div style={{float: "right"}}>
Dated:
{this.state.currentDate}
</div>
);
}
}
export default Welcome;
export {DateComp};
解决方案
您不能这样做,您正在替换元素内部的root
内容,因此只有最后一个组件会显示<DateComp/>
. 使用组件组合。像这样。
index.js
import React from 'react';
import ReactDOM from 'react-dom';
import Welcome,{DateComp} from './Welcome';
ReactDOM.render(<App/>,document.getElementById('root'));
app.js
const App = () => {
return (<div>
<Welcome/>
<Datacomp/>
</div>)
}
推荐阅读
- javascript - 字符串附加字符串的python奇怪结果
- vb.net - 在两个表单都显示在屏幕上时在表单之间传递字符串
- swagger - 为 swagger 设置本地编辑器
- android - 从小米的最近列表中刷出后服务未重新启动
- javascript - 如何将div变成一个按钮?
- android - 如何在android中的地图活动(片段活动)中显示弹出窗口
- pyqt5 - PyQt5 QTableView 用 Delegate 选择单元格背景
- javascript - 翻译 docker yaml 文件时出现不规则符号
- react-native - 如何在上传图像之前在图像选择器中裁剪图像
- python-3.x - 导入模块 VSCode Python3