微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决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 举报,一经查实,本站将立刻删除。