Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何解决错误';警告:React.createElement:类型不应为null,React中未定义?_Javascript_Reactjs - Fatal编程技术网

Javascript 如何解决错误';警告:React.createElement:类型不应为null,React中未定义?

Javascript 如何解决错误';警告:React.createElement:类型不应为null,React中未定义?,javascript,reactjs,Javascript,Reactjs,我是reactjs新手,尝试通过中的教程实现reactjs应用程序。当我读到本教程的中间部分时,我在运行npm run test时收到了错误 app.js: import React from 'react' import ReactDOM from 'react-dom' import 'font-awesome/css/font-awesome.css' import App from 'containers/App/App' import './app.css' import {

我是reactjs新手,尝试通过中的教程实现reactjs应用程序。当我读到本教程的中间部分时,我在运行
npm run test
时收到了错误

app.js:

import React from 'react'
import ReactDOM from 'react-dom'

import 'font-awesome/css/font-awesome.css'


import App from 'containers/App/App'

import './app.css'

import {browserHistory, Router, Route} from 'react-router'

const Home = React.createClass({
  render: function() {
    return (<div>Hello world</div>)
  }
})

const routes = (
  <Router>
    <Route path="/" component={Home} />
  </Router>
)



const mountNode = document.querySelector('#root');
ReactDOM.render(
  <App history={browserHistory} />, mountNode);
从“React”导入React
从“react dom”导入react dom
导入'font-awesome/css/font-awesome.css'
从“容器/应用程序/应用程序”导入应用程序
导入“./app.css”
从“react Router”导入{browserHistory,Router,Route}
const Home=React.createClass({
render:function(){
返回(你好,世界)
}
})
常数路由=(
)
const mountNode=document.querySelector('#root');
ReactDOM.render(

您没有导出
应用程序的组件

换成

import React, { PropTypes } from 'react'; 
import ReactDOM from 'react-dom' 
import { Router } from 'react-router'; 
export default class App extends React.Component { 
   static propTypes = { 
      routes: PropTypes.object.isRequired, 
      history: PropTypes.object.isRequired 
   }
   get content() { 
       return (
            <Router routes={this.props.routes} history={this.props.history} />
        ) 
    } 
    render() { 
       return ( 
          <div style={ { height: '100%' } }> {this.content} </div>
        ) 
    }
  } 
import React,{PropTypes}来自'React';
从“react dom”导入react dom
从“react Router”导入{Router};
导出默认类App扩展React.Component{
静态propTypes={
路由:PropTypes.object.isRequired,
历史记录:PropTypes.object.isRequired
}
获取内容(){
返回(
) 
} 
render(){
报税表(
{this.content}
) 
}
} 

请注意导出关键字。

你的组件容器/App文件夹中有三个文件。App.js、App.spec.js、styles.module.css和App.js如下:导入React,{PropTypes}来自'React';导入ReactDOM来自'React dom'导入{Router}从'react router';类应用程序扩展react.Component{static propTypes={routes:propTypes.object.isRequired,history:propTypes.object.isRequired}获取内容(){return()}呈现(){return({this.content}}}你有两个app.js文件吗?我想你没有导出你的应用程序组件,这就是问题所在。我在发帖时错了代码导出默认应用程序;。它存在于实际代码中。在我的代码底部有导出默认应用程序;。我也按照你的建议进行了更改。但问题仍然存在
import React, { PropTypes } from 'react'; 
import ReactDOM from 'react-dom' 
import { Router } from 'react-router'; 
export default class App extends React.Component { 
   static propTypes = { 
      routes: PropTypes.object.isRequired, 
      history: PropTypes.object.isRequired 
   }
   get content() { 
       return (
            <Router routes={this.props.routes} history={this.props.history} />
        ) 
    } 
    render() { 
       return ( 
          <div style={ { height: '100%' } }> {this.content} </div>
        ) 
    }
  }