Mern 应用程序在开发模式下运行良好,但在生产模式下显示“c.map 不是函数”

时间:2021-06-13 04:41:49

标签: node.js reactjs heroku mern

我已将 redux 用于我的 mern 应用程序,并且在我的本地机器上一切正常。在我将它部署到 heroku 后,它显示错误,指出 c.map is not a function。指出浏览器控制台上map方法的错误。

我针对那个显示组件的特定错误的反应代码是-

import React, { useState, useEffect } from 'react'
import ImageCarousel from '../components/ImageCarousel'
import { useDispatch, useSelector } from 'react-redux'
import { listProducts } from '../actions/productActions'
import Loading from '../components/Loading'
import ProductCard from '../components/ProductCard'
const Home = () => {
  const dispatch = useDispatch()
  const productList = useSelector((state) => state.productList)
  const { loading, products, error } = productList
  useEffect(() => {
    dispatch(listProducts())
  }, [dispatch])
  return (
    <div className=''>
      <ImageCarousel />
      {loading ? (
        <Loading />
      ) : (
        <div className='container'>
          <p className='top-picks'>Top picks for you</p>
          <div className='shopping-items'>
            {products &&
              products.map((item) => (
                <ProductCard key={item._id} product={item} />
              ))}
          </div>
        </div>
      )}
    </div>
  )
}

export default Home
<块引用>

它在上面的 products.map 行上显示错误,但仅在生产中 模式。

在 redux 工具上,我可以清楚地看到,一开始它显示 PRODUCT_LIST_SUCCESS,然后突然变为 PRODUCT_LIST_FAIL。

<块引用>

我的 redux 结果图像是-

enter image description here

enter image description here

但是处于开发模式

<块引用>

对于相同的请求,redux 结果图像是-

enter image description here

0 个答案:

没有答案