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

问题描述

我已将 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

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)