reactjs - 类型错误:customers.map 不是函数
问题描述
我有这个问题,有人可以帮助我吗?TypeError:customers.map 不是函数。我一直这样使用它,我从来没有遇到任何问题。它关于数据集成。基本上就是这样,请任何人都可以帮助我吗?
import React, { useState, useEffect } from "react";
import { List, Card } from "antd";
import { data } from "../../../mocks/customers";
import { DeleteCustomerButton } from "@components/atoms/DeleteCustomerButton";
import { CustomersEditButton } from "@components/atoms/CustomersEditButton";
import { useContext } from "../../../contexts/context";
const { Meta } = Card;
const CustomersCardList: React.FC = () => {
const customers: any = useContext();
return (
<div>
{customers.map((customer, key) => { })}</div>)
}
//context.tsx
import * as React from 'react';
import axios from 'axios';
export const AccountContext = React.createContext({});
export const useContext = () => React.useContext(AccountContext);
interface AccounterContextProviderProps {
value: any
};
export const AccounterContextProvider: React.FC<AccounterContextProviderProps> = ({ children, value }) => {
const [customers, setCustomers] = React.useState<any>([]);
React.useEffect(() => {
const getCustomers = async () => {
const result = await axios.get("http://localhost:3333/customers");
setCustomers(result.data);
}
getCustomers();
}, []);
console.log(customers);
return (
<AccountContext.Provider value={{ ...value, customers }}>
{children}
</AccountContext.Provider>
)
};
解决方案
Any 可以是任何东西,不仅是数组,因此它不会有map
方法。const customers:any[] = useContext()
改为使用
推荐阅读
- php - Eloquent-Sluggable 包如何在锚标签中使用
- javascript - 在 JavaScript 列中添加粗体
- python-3.x - 为多个 python 项目/repo 创建单个 python 包(元包)
- python - 如何在 Python tkinter 中进行布局管理
- snowflake-cloud-data-platform - 截断 Snoflake 模式中的所有表
- python - 用 jsonmerge 合并 2 个 json 文件
- javascript - 我如何不分配新值并且不返回任何反应?
- button - SetOnClickListener 用于 RecyclerView 中的 Button 以访问 viewmodel 并对房间数据库执行操作
- bootstrap-vue - bootstrap-vue 自定义数据渲染按item key排序(比formatter简单)
- javascript - 未捕获的类型错误:L.minichart 不是函数(传单饼图)