0
我想在ReactJS項目(https://github.com/LeMueller/musicplayer-by-react/tree/dev)上使用路由器V4。但是我得到錯誤:AppUI未定義。通過這個演示(https://codepen.io/HeroBBQ/pen/jGEjNL)該方法運作良好。React路由器V4,未找到組件
我的代碼有什麼問題?
預先感謝您!
export default class Root extends Component{
constructor(props){
super(props);
this.state={
musiclist: MUSIC_LIST,
currentMusicItem: MUSIC_LIST[0]
}
this.PlayerUI=this.PlayerUI.bind(this);
this.ListUI=this.ListUI.bind(this);
}
PlayerUI =() => (
<Player
cuerrentMusicItem={this.state.cuerrentMusicItem}
/>
);
ListUI =() => (
<MusicList
cuerrentMusicItem={this.state.cuerrentMusicItem}
musicList={this.state.musicList}
/>
);
MainUI =() => (
<Switch>
<Route exact path='/' component={PlayerUI}/>
<Route path='/list' component={ListUI}/>
</Switch>
)
AppUI =() => (
<div>
<Header />
<MainUI />
</div>
)
render(){
return(
<HashRouter>
<AppUI />
</HashRouter>
)
}
}
你好,謝謝你的回答。但是通過你的代碼,PlayerUI中的「this.state」不能指向根組件中的狀態。 –
爲什麼不呢?它綁定在構造函數中? –
this.PlayerUI = this.PlayerUI.bind(this);錯誤:PlayerUI未定義。 –