我正在使用Next.js並且想要使用redux預取API項目。下面是一些代碼,幾乎工作:在NextJS中調用dispatch時訪問redux狀態getInitialProps
class Thing extends Component {
static getInitialProps ({ store }) {
store.dispatch(fetchProduct())
}
}
const mapStateToProps = (state, ownProps) => {
return {
product: getProduct()
}
}
我遇到的問題是,組件呈現getProduct
具有信息之前。我怎樣才能塑造一些東西,以便在派遣獲取該項目之前不渲染?如果有問題,我正在使用redux-api-middleware。我可以在渲染中檢查「產品」的存在/有效性,但是這樣做會破壞getInitialProps
的目的。有沒有辦法用redux來實現async/await fetch的等價物?
更新好吧,這可能無法正常工作。 redux-api-middlewar似乎將一個空對象作爲SSR操作返回 - 因此它不是時序問題。