повторное подключение с помощью getServerSideProps в nextjs

#reactjs #redux #react-redux #next.js #server-side-rendering

Вопрос:

я пытаюсь передать состояние из mapStateToProps в getServerSideProps (), но получаю эту ошибку: Error: Objects are not valid as a React child (found: [object Promise]). If you meant to render a collection of children, use an array instead.

*примечание: я попытался использовать next-redux-оболочку для достижения этого » получения состояния в getServerSideProps ()», но ничего не работало должным образом. поэтому я пробую этот подход

возможно ли вообще сделать это таким образом?

index.js:

  import { connect } from 'react-redux'
 import store from '../redux/store'
 import Product from '../components/Product'

 const getServerSideProps = async (state) => {
   const { products, loading } = state.productList

   return {props: {products: products, loading: loading}}
 }

 const mapStateToProps = function() {
   const state = store.getState()

   return {props: {state: state}}
 }


 export function Home (products) {
   <Product products={products}>
 }

 export default connect(mapStateToProps)(getServerSideProps)
 

Комментарии:

1. Я никогда не видел этого :»экспорт подключения по умолчанию(mapStateToProps)(getServerSideProps)»

2. Вам нужно передать компонент React для connect вызова, т. е. connect(mapStateToProps)(Home) . Я все равно рекомендовал бы вам изучить next-redux-wrapper , поскольку он больше ориентирован на Next.js.

3. @juliomalves привет. я опубликовал свой код с next-redux-оболочкой в nextjs github некоторое время назад в разделе «Проблемы». не могли бы вы взглянуть на это, если возможно. Спасибо. github.com/kirill-konshin/next-redux-wrapper/issues/423