鍍金池/ 問(wèn)答/HTML/ react 頁(yè)面?zhèn)髦?初始值問(wèn)題

react 頁(yè)面?zhèn)髦?初始值問(wèn)題

現(xiàn)在正在做一個(gè)選擇教材章節(jié)的需求。頁(yè)面設(shè)計(jì)是章節(jié)一個(gè)組件,選擇章節(jié)是打開(kāi)新頁(yè)選擇,教材是當(dāng)前頁(yè)彈框選擇。分兩種情況,一是用戶第一次選擇,先選擇教材,選完教材以后把獲得的bookId傳給章節(jié)子組件,章節(jié)組件用bookId做參數(shù)調(diào)章節(jié)資料接口。二是記住了用戶上一次的選擇,即頁(yè)面上來(lái)就有上一次用戶選的教材和章節(jié)。
現(xiàn)在遇到的問(wèn)題是,bookId拿到以后,在componentDidMount里

  let chapters = await matchExcerciseApi.fetchChapters({
    this.props.bookId
  })
  this.setState({
    chapters
  }),
  
  章節(jié)列表并不會(huì)變化。
  
回答
編輯回答
囍槑

從代碼上來(lái)看是沒(méi)有問(wèn)題的,提供的信息太少了,沒(méi)辦法找到錯(cuò)誤,建議你整個(gè)流程調(diào)試一遍:
1、bookId有沒(méi)有拿到
2、chapters有沒(méi)有拿到
3、chapters有沒(méi)有渲染到頁(yè)面上

2018年4月22日 08:25
編輯回答
萌吟

信息太少,可以用forceUpdate強(qiáng)制更新? 我也不確定,建議show your code

2018年8月3日 14:18
編輯回答
哚蕾咪

是不是要把初始值放入state

你可以這么寫

state = {
    id:this.props.id
}
2017年1月21日 23:22