javascript - TypeScript 错误道具不可分配给 never
问题描述
嘿善良的互联网陌生人!
我是编码和 TypeScript 的新手,我在这里寻求帮助。
我正在尝试从道具中检索一组对象,我将映射到一个新对象,其中仅包含我需要的信息并返回它,但我收到错误:(
任何帮助是极大的赞赏。提前致谢!
我的代码:
import { connect } from "react-redux";
const Events = (props: any) => {
const { organization } = props;
let result = [
organization.bookings.bookings.map((booking: any) => ({
title: booking.title,
start: booking.time.startTime,
end: booking.time.endTime,
})),
];
return result;
};
const mapStateToProps = (state: any) => ({
organization: {
bookings: state.bookings,
},
});
export default connect(mapStateToProps)(Events);
我在最后一行(导出语句)的“事件”处收到错误,并显示以下消息:
TypeScript 错误:'(props: any) => any[]' 类型的参数不可分配给'ComponentType' 类型的参数。类型 '(props: any) => any[]' 不可分配给类型 'FunctionComponent'。类型 'any[]' 缺少类型 'ReactElement<any, any>' 中的以下属性:类型、道具、键 TS2345
当我到达那里时,我可以设置这个组件useState(<Events />)
吗?
解决方案
connect
应该在 React 组件上使用。这Events
是一个返回任何数组的函数,因此它不是 React 组件。
推荐阅读
- c# - Read text file from relative path within project
- mysqli - 安装创建核心表失败 | 安装 Revive Adserver 5.2.0
- pentaho - 在 Pentaho 中将批量 .xlsx 文件转换为 .csv (UTF-8)
- salesforce - Salesforce:如果客户或公司名称如此,则自动将潜在客户所有者分配给特定用户的有效方法
- mysql - 一张表用于多个数据库
- python - 在 Python,pandas 中,当我将列从十六进制转换为十进制时,如何忽略 python 中的无效值?
- sql - 有没有办法从动态 SQL 查询创建视图或临时表
- vue.js - Vue 3 递归组件导致无限设置调用
- vba - 如何在 MS Word 中使用 VBA,确定表格单元格中的段落是编号还是项目符号?
- python - 自动脚本 - 12 列滞后的算术运算