如果在索引路由 React JS 上渲染内容
Render content if on index route React JS
使用反应路由器,并且当前仅在我在索引路由"/"
和其他内容上时才尝试渲染一些内容。
这就是我到目前为止想出的,没有出现任何错误,但它似乎不能很好地与代码配合使用。
var renderContent = function() {
return (
<div className="contain">
{this.props.sidebar}
<div className="page">
{this.props.main}
</div>
</div>
)
}
var renderHomepage = function() {
return (
<div className="homepage">
{this.props.main}
</div>
);
}
var toRender = function() {
if (this.props.path == '/') {
{this.renderHomepage()}
} else {
{this.renderContent()}
}
}
然后下面我继续:
export default React.createClass({
render() {
return(
<div>
<div className="main-content">
{toRender}
...
在任何路线上似乎都没有渲染任何东西。有什么想法吗?
编辑:
...
import Home from './Home'
module.exports = (
<Route path="/" component={App}>
<IndexRoute component={Home}/>
<Route path="design" component={{main: deMain, header: deHeader, sidebar: sbAnimations}}>
<Route path="scheme" component={deScheme}/>
</Route>
</Route>
)
其中我的Home
组件如下所示:
import React from 'react'
export default React.createClass({
render() {
return (
<div className="hero">
</div>
)
}
})
你做错了。您renderContent
、renderHomepage
和 toRender
在您的类外部定义,并且无法访问 this.props.path。这些需要在类中定义。 像这样:
export default React.createClass({
renderContent() {
...
}
renderHomepage() {
...
}
toRender() {
if (this.props.path == '/') {
return this.renderHomepage();
} else {
return this.renderContent();
}
}
render() {
return(
<div>
<div className="main-content">
{this.toRender()}
...
将渲染函数放在React.createClass
中应该可以工作。并且需要更新 toRender 函数以返回函数。你需要执行这个.toRender。
相关文章:
- 在索引.html和应用.js [node.js] 之间共享变量
- Angular js+ng repeat+字母数字索引不起作用
- ES6 (ECMAScript 2015) 模块:导入索引.js
- Node.js库,用于生成索引PNG
- JS/CSS:如何在向下滚动超过1200像素(高度)后更改z索引值
- Disqus的计数.js脚本在索引中无法正常运行.html与react.js网站
- 文件结构:使用索引.js文件级联访问子模块或子文件
- ext.js根据行和单元格索引隐藏某些单元格
- 我该如何运行“;节点索引.js”;在乌班图
- 在知道对象值的情况下,确定数组中JS对象的索引
- 循环索引变量的节点 JS 丢失
- angular.js:13424 ReferenceError:在控制器中使用工厂方法时未定义索引
- JS:创建从索引0开始的所有子字符串的最快方法
- 节点如何找到我的应用.js索引
- 幻灯片放映横幅.js +索引+
- 如何对以下 js 索引脚本进行故障排除
- Ember JS索引路由
- Ractive.js索引没有't似乎是被动的
- d3.js索引页可视化示例效果
- Paper.js Z索引和绑定对象