2017-07-06 15 views
0

を期待Appのレンダリングメソッドを確認してください。Reactjs Uncoughtエラー:要素型が無効です:</p> <p>「不明なエラー:要素タイプが無効である:(内蔵部品のための)文字列またはクラス/関数(予想、私は次のエラーを取得する文字列

私のコードをチェックして倍増しましたが、私は問題を解決できません。

誰でも知っていますか?以下のコードを参照してください。

App.js

import React, {Component} from 'react'; 
import ReactDOM from 'react-dom'; 
//import ReactD3, {BarChart, LineChart} from 'react-d3-components'; 
import {MenuList} from './menu/menulist.js'; 
import {TabList} from './menu/tablist.js'; 
import {TabContainer, TabContent, TabPane, Nav, Tab, Row, Col} from 'react-bootstrap'; 

class App extends Component{ 
    constructor(props){ 
    super(props); 
    } 
    render(){ 
    console.log("Here 1") 
    const menunames = [ 
     {id: "first", name: "Tab 1"}, 
     {id: "second", name: "Tab 2"} 
    ]; 

    const plist = [ 
     {id: "first", name: "Content 1"}, 
     {id: "second", name: "Content 2"} 
    ]; 
    console.log("Here 2") 
    return (
     <div className="app"> 
     <Tab.Container id="left-tabs-example"> 
     <Row className="clearfix"> 
      <Col sm={4}> 
      <MenuList items={menunames} /> 
      </Col> 
      <Col sm={8}> 
       <TabList panels={plist} /> 
      </Col> 
     </Row> 
     </Tab.Container> 
    </div> 
    ); 
    } 
} 

export default App 

menulist.js

import React, {Component} from 'react'; 
import ReactDOM from 'react-dom'; 
import {TabContainer, TabContent, TabPane, Nav, NavItem, Tab, Row, Col} from 'react-bootstrap'; 

class MenuList extends Component{ 
    constructor(props){ 
    super(props); 
    } 

    MenuItem({ menuitems }){ 
    return menuitems.map(item => (
     <NavItem eventKey={item.id}> 
     {item.name} 
     </NavItem> 
    )) 
    } 

    render(){ 
    return (
     <Nav bsStyle="pills" stacked> 
     <MenuItem menuitems={this.props.items} /> 
     </Nav> 
    ) 
    } 
} 

MenuList.propTypes = { 
    items: React.PropTypes.array 
} 

export default MenuList 

tablist.js

import React, {Component} from 'react'; 
import ReactDOM from 'react-dom'; 
import {TabContainer, TabContent, TabPane, Nav, Tab, Row, Col} from 'react-bootstrap'; 

class TabList extends Component{ 
    constructor(props){ 
    super(props); 
    } 

    TabPanel({ pans }){ 
    return pans.map(panel => (
     <Tab.Pane eventKey={panel.id}> 
     {panel.name} 
     </Tab.Pane> 
    )) 
    } 

    render(){ 
    return (
     <Tab.Content animation> 
     this.props.panels.map(panel => (
      <Tab.Pane eventKey={panel.id}> 
      {panel.name} 
      </Tab.Pane> 
     ) 
     </Tab.Content> 
    ) 
    } 
} 

TabList.propTypes = { 
    panels: React.PropTypes.array 
} 

export default TabList 

答えて

0
import {MenuList} from './menu/menulist.js'; // not correct 
import {TabList} from './menu/tablist.js'; 

あなたはexport defaultを持っている場合あなたがimportでカーリーブレーサーを必要としません。

import MenuList from './menu/menulist.js'; //correct 
import TabList from './menu/tablist.js'; 


Export {MyComponent, MySecondComponent}; -> import {MyComponent, MySecondComponent} from './path'; 
Export default MyComponent -> import MyComponent from './path'; 
+0

ありがとうございます。私は今、しかし、私は次のエラーが発生することを修正しました:ReferenceError:MenuItemは定義されていません MenuList.render – Collybus

関連する問題