1

我正在尝试使用'next-redux-wrapper' HOC 将我的 next.js Web 应用程序与 redux 挂钩。

我能够从 getInitialProps 函数从服务器获取数据,但是在用 next-redux-wrapper 包装我的 _app.js 之后,getInitialProps 函数似乎不起作用。

我在这里做错了什么,我该如何解决?

import React from 'react'
import fetch from 'isomorphic-unfetch'
import { connect } from 'react-redux'
import { getItems } from '../../store/actions/itemAction'

const Index = (props) => {
  console.log(props)

  return ()
}

Index.getInitialProps = async () => {
  let items
  await fetch('http://localhost:5000/item')
    .then(res => res.json())
    .then(data => { items = data })
    .catch(err => console.log(err))

  return { items }
}

const mapStatetoProps = state => ({
  item: state.item,
})

export default connect(mapStatetoProps, null)(Index)

4

1 回答 1

0

zeit/next.js 提供的以下示例也存在同样的问题。请参阅https://github.com/zeit/next.js/tree/master/examples/with-redux-wrapper在此示例中,也未调用函数“getInitialProps”。自述文件中提到的效果,即时间直接在服务器上预渲染,因此是不可见的。

于 2020-05-06T15:10:16.390 回答