如何使用 ReactDOM Render 渲染一个 React 组件
how to render a react component using ReactDOM Render
_Header (cshtml)
<div id="Help"></div>
export default class Help {
ReactDOM.render(
<Help/>,
document.getElementById('Help')
);
}
Help.js (component)
}
我的目标是在页眉上呈现一个帮助按钮。
我创建了 div 标签,id 为 help-modal ,还有一个
组件渲染帮助按钮。我正在连接 help.js 中的那两个
通过 ReactDOM.render(.........);
当我执行 npm 运行 dist 和 dotnet 运行 并查看浏览器时
我看不到 header 上的按钮。有人可以帮忙吗??
您需要导出帮助组件
Help.js
import React, { Component } from 'react';
import Dialog from 'material-ui/Dialog';
import FlatButton from 'material-ui/FlatButton';
import RaisedButton from 'material-ui/RaisedButon';
class Help extends Component {
render() {
return (
<div>
<RaisedButton label="Help"/>
</div>
);
}
}
export default Help;
并且无需创建 React 组件来呈现 HelpComponent
Helppage.js
import HelpComponent from '../components/Help';
import ReactDOM from 'react-dom';
ReactDOM.render(
<HelpComponent/>,
document.getElementById('Help-modal')
);
您正在 ReactDOM.render 中调用 一个未呈现的 React 组件。
在 class 定义之外调用 ReactDOM 渲染以获得帮助
将您的按钮渲染到屏幕上:
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import Dialog from 'material-ui/Dialog';
import FlatButton from 'material-ui/FlatButton';
import RaisedButton from 'material-ui/RaisedButton';
class Help extends Component {
render() {
return (
<div>
<RaisedButton label="Help"/>
</div>
);
}
}
ReactDOM.render(
<Help />,
document.getElementById('Help-modal')
);
就是这样。
为避免混淆,应尝试为组件指定有意义的名称。当您尝试将其中一个导入另一个时(在本例中没有必要),将它们都命名为 Help 可能会造成混淆。
如果您确实想在 app.js/index.js 根级组件中嵌套帮助组件,则需要导出该元素,因此需要修改 class 声明行如下:
export default class Help extends Component {
然后在您的父组件中,您需要使用以下内容导入它:
import Help from './components/Help';
更新:
刚刚注意到有一种类型:
import RaisedButton from 'material-ui/RaisedButon';
它在 RaisedButton 中缺少 't'!
应该是:
import RaisedButton from 'material-ui/RaisedButton';
_Header (cshtml)
<div id="Help"></div>
export default class Help {
ReactDOM.render(
<Help/>,
document.getElementById('Help')
);
}
Help.js (component)
}
我的目标是在页眉上呈现一个帮助按钮。
我创建了 div 标签,id 为 help-modal ,还有一个 组件渲染帮助按钮。我正在连接 help.js 中的那两个 通过 ReactDOM.render(.........); 当我执行 npm 运行 dist 和 dotnet 运行 并查看浏览器时 我看不到 header 上的按钮。有人可以帮忙吗??
您需要导出帮助组件
Help.js
import React, { Component } from 'react';
import Dialog from 'material-ui/Dialog';
import FlatButton from 'material-ui/FlatButton';
import RaisedButton from 'material-ui/RaisedButon';
class Help extends Component {
render() {
return (
<div>
<RaisedButton label="Help"/>
</div>
);
}
}
export default Help;
并且无需创建 React 组件来呈现 HelpComponent
Helppage.js
import HelpComponent from '../components/Help';
import ReactDOM from 'react-dom';
ReactDOM.render(
<HelpComponent/>,
document.getElementById('Help-modal')
);
您正在 ReactDOM.render 中调用 一个未呈现的 React 组件。
在 class 定义之外调用 ReactDOM 渲染以获得帮助
将您的按钮渲染到屏幕上:
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import Dialog from 'material-ui/Dialog';
import FlatButton from 'material-ui/FlatButton';
import RaisedButton from 'material-ui/RaisedButton';
class Help extends Component {
render() {
return (
<div>
<RaisedButton label="Help"/>
</div>
);
}
}
ReactDOM.render(
<Help />,
document.getElementById('Help-modal')
);
就是这样。
为避免混淆,应尝试为组件指定有意义的名称。当您尝试将其中一个导入另一个时(在本例中没有必要),将它们都命名为 Help 可能会造成混淆。
如果您确实想在 app.js/index.js 根级组件中嵌套帮助组件,则需要导出该元素,因此需要修改 class 声明行如下:
export default class Help extends Component {
然后在您的父组件中,您需要使用以下内容导入它:
import Help from './components/Help';
更新:
刚刚注意到有一种类型:
import RaisedButton from 'material-ui/RaisedButon';
它在 RaisedButton 中缺少 't'!
应该是:
import RaisedButton from 'material-ui/RaisedButton';