React Router渲染空白页

Quesofat

我正在构建一个React应用程序,而React Router呈现一个黑页。我已经四处搜寻,似乎无法弄清楚发生了什么。

指数

import React from 'react'
import {render} from 'react-dom'
import routes from './routes'
render(routes, document.getElementById('root'))

路线

import React, { Component } from 'react'
import { Router, Route, hashHistory } from 'react-router'
import Home from './Home.js'
import Name from './Name.js'
//import level from './level.js'
//import level1 from './level1.js'
//import level2 from './level2.js'
//import result from './result.js'

const routes = (
  <Router history={hashHistory}>
    <Route path='/' component={Home} />
    <Route path='/name' component={Name} />
  </Router>
);

export default routes;

通过导航/ name不能呈现的组件

import React, { Component } from 'react'
import appState from './state.js'
import { Router } from 'react-router'

class Name extends Component {
  constructor() {
    super();
    this.state = {username: ''};
  }

  onUpdateUser = (e) => {
    this.appState.username = e.target.value;
    Router.push({
      pathname: '/level'
    })
  }

  render() {
    return (
      <div className="row">
        <div claassName="col-md-12">
          <div className="nameBox">
            <form className="form-inline" onSubmit={this.onUpdateUser()}>
              <input type="text" className="form-control" placeholder="Desiered Username" onChange={this.onUpdateUser} value={this.state.username} />
              <button type="submit" className="btn btn-success">Submit</button>
            </form>
          </div>
        </div>
      </div>
    )
  }
}

export default Name

任何帮助将不胜感激!PS索引路由工作正常。

阿尔塞达

走的路是./routes什么?您是否有一个/routes/index.js文件,其中包含您为路由放置的代码?

另外,我建议您对“普通”网址使用browserHistory而不是hashHistory,而不要使用散列。有关此的更多信息

对于您的Name班级,我建议您使用withRouterReact Router中的高阶组件。这会将' router'作为props注入到组件内部,因此您可以使用this.props.router.push('/path')

this.appState现在实际上什么也没做。您正在导入未被触摸的“ appState”。现在,您要在“名称”组件中设置“ appState”。您不是要使用this.setState({ username: e.target.value })?onUpdateUser(e) { code }在类函数中使用代替箭头函数也是一种更好的做法

我也看到了<form className="form-inline" onSubmit={this.onUpdateUser()}>-我认为onUpdateUser在渲染此组件时当前会调用它。您应该onSubmit={this.onUpdateUser}改为执行此操作,以便在onSubmit触发时调用该函数onSubmit={e => this.onUpdateUser(e)},两者都有效。

您到底想用此代码实现什么?


编辑:

我添加了一个要点,即在不使用React Router的情况下创建了“介绍-设置用户名-选择级别-休息”流程。React Router并非总是必需的,特别是对于您确实想要控制必须显示的视图流的事物而言。

https://gist.github.com/Alserda/150e6784f96836540b72563c2bf331d0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

React Router with Handler 显示空白页

来自分类Dev

在React Router中的嵌套路由中刷新后看到空白页

来自分类Dev

在 react-router v4 中看到嵌套路由中的空白页

来自分类Dev

已部署Firebase React.js应用-空白页

来自分类Dev

如何解决空白页?(React初学者)

来自分类Dev

部署后空白页-带节点的React应用

来自分类Dev

React-MVC4 .Net-空白页

来自分类Dev

导入后React Router呈现空白页面

来自分类Dev

React App生产构建空白只有空白页

来自分类Dev

使用Ghostscript渲染空白页

来自分类Dev

为什么Twig渲染空白页?

来自分类Dev

使用Ghostscript渲染空白页

来自分类Dev

在React中向路由器添加React路由会生成空白页

来自分类Dev

部署了一个React项目。它只显示空白页而不是项目

来自分类Dev

由Firebase部署和托管React App时获得空白页

来自分类Dev

使用Firebase进行仿真时,React应用程序会出现空白页

来自分类Dev

React:应用程序在桌面上运行,但在移动设备上显示空白页

来自分类Dev

渲染图像太高时出错(空白页)

来自分类Dev

通过UI-Router使用多个视图的空白页

来自分类Dev

UIPageViewController空白页

来自分类Dev

Django空白页

来自分类Dev

React Router问题:React在同一页面上渲染两个组件

来自分类Dev

React Firebase Hosting 部署空白页面

来自分类Dev

下载空白页(toDataURL())

来自分类Dev

Webmatrix中的空白页

来自分类Dev

Chrome打印空白页

来自分类Dev

laravel刀片空白页

来自分类Dev

printdocument添加空白页

来自分类Dev

Tomcat加载空白页