我收到此错误:

Uncaught Error: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. 

这是我的代码:

var React = require('react') 
var ReactDOM =  require('react-dom') 
var Router = require('react-router') 
var Route = Router.Route 
var Link = Router.Link 
 
var App = React.createClass({ 
  render() { 
    return ( 
      <div> 
        <h1>App</h1> 
        <ul> 
          <li><Link to="/about">About</Link></li> 
        </ul> 
      </div> 
    ) 
  } 
}) 
 
var About = require('./components/Home') 
ReactDOM.render(( 
  <Router> 
    <Route path="/" component={App}> 
      <Route path="about" component={About} /> 
    </Route> 
  </Router> 
), document.body) 

我的Home.jsx文件:

var React = require('react'); 
var RaisedButton = require('material-ui/lib/raised-button'); 
 
var Home = React.createClass({ 
  render:function() { 
    return ( 
        <RaisedButton label="Default" /> 
    ); 
  }, 
}); 
 
module.exports = Home; 

请您参考如下方法:

就我而言(使用 Webpack),区别在于:

import {MyComponent} from '../components/xyz.js'; 

对比

import MyComponent from '../components/xyz.js'; 

第二个工作正常,而第一个导致错误。或者相反。


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!