我是UI開發新手,試圖將我的組件分割到不同的文件中。 這是我需要在其他文件中使用的組件之一。reactjs可重用組件拋出錯誤
import React, { Component } from 'react';
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';
import injectTapEventPlugin from 'react-tap-event-plugin';
import {AppBar} from 'material-ui/AppBar';
//injectTapEventPlugin();
class LoginPage extends Component {
render() {
return (
<div>This is from the login page</div>
);
}
}
export default LoginPage;
這是我嘗試使用上述組件的主要頁面。 它給我下面的錯誤在瀏覽器中
React.createElement:類型無效 - 預期字符串(內置 成分)或類/功能(複合組件),但得到: 未定義。你可能忘了您的組件從文件導出 它
import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';
import injectTapEventPlugin from 'react-tap-event-plugin';
import LoginPage from './LoginPage.js'
import {RaisedButton, Dialog, FlatButton} from 'material-ui';
injectTapEventPlugin();
//var LoginPage = require('./pages/LoginPage.js');
//class component
class App extends Component {
render() {
return (
<MuiThemeProvider>
<div>
This is my page
<LoginPage />
</div>
</MuiThemeProvider>
);
}
}
export default App;
我看到這樣類似的錯誤已定義,但他們都表示,有出口構件的一些問題,我不能看到同樣的問題因爲我正確導出LoginPage組件,然後將其導入到App.js文件中。
有人可以幫忙嗎?
使用您的調試器/ console.log來檢查哪一個(MuiThemeProvider,LoginPage)未定義,並嘗試修復它。 – lilezek
你的項目結構是什麼?您的LoginPage.js文件是否包含App組件,是否與您的LoginPage.js目錄相同? – bennygenel
@bennygenel是的,它在同一個目錄 –