JSX 元素类型没有任何构造或调用签名。打字稿

2023-11-24

In case compose使用时出现错误JSX element type ‘Option’ does not have any construct or call signatures.“redux”版本 - 3.7.2

import * as React from 'react';
import { compose } from 'redux';
import { connect } from 'react-redux';
const { connect: fela, withTheme } = require('react-fela');

const Option = compose(
    ...[
        connect(null,
            dispatch => ({
                onClick: (name) => dispatch(setActive(name)),
            })),
        fela({
            option: ({ theme }) => ({
                ...getControlOptionColors(theme),
            }),
        }),
    ],
)(withTheme(({ label, name, onClick, styles }) => (
    <div className={styles.option} onClick={onClick.bind(this, name)}>{label}</div>
)));

export class Test extends React.PureComponent<any, any> {

    private renderOptions(options) {
        return (
            <div className={this.props.styles.options}>
                {options.map(option => (
                    <div key={option.value}>
                        <Option
                            label={option.label}
                            name={option.value}
                        />
                    </div>
                ))}
            </div>
        );
    }


    public render() {
        const { options } = this.props;
        return (
            <div className={this.props.styles.container}>
                {this.renderOptions(options)}
            </div>
        );
    }
}

export default Controls;

没有撰写,一切正常。

const Element = withTheme(({ label, name, onClick, styles }) => (
        <div className={styles.option} onClick={onClick.bind(this, name)}>{label}</div>
    ))

const conponentWithConnect = connect(null,
    dispatch => ({
        onClick: (name) => dispatch(setActive(name)),
    }))(Element);

const Option = fela({
        option: ({ theme }) => ({
                    ...getControlOptionColors(theme),
        }),
    })(withConnect)

您需要将 compose 返回的组件类型转换为 React.ComponentType 并且它可以正常工作。所以:

compose(...)(SomeComponent) as React.ComponentType
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSX 元素类型没有任何构造或调用签名。打字稿 的相关文章

随机推荐

  • 如何防止 URLDownloadToFile 从缓存中检索?

    我正在使用 URLDownloadToFile 从网站检索文件 后续调用将返回原始文件而不是更新版本 我假设它正在检索缓存的版本 在调用 URLDownloadToFile 之前使用相同的 URL 调用 DeleteUrlCacheEntr
  • invalidateList 和 invalidateDisplayList 有什么区别?

    我有一个 DataGrid 其中填充有 ArrayCollection 中的对象 更新对象的字段之一后 我希望屏幕更新 数据源不可绑定 因为我是在运行时构建它的 而且我还不知道如何使其可动态绑定 这是另一个问题 在这种情况下 如果我在网格上
  • 清理 Mercurial 存储库

    我的 hg 存储库的历史记录中有一堆文件已被删除 它们导致存储库变得相当大 其中一些是图像 以及项目早期的 sql 转储 以及其他一开始就不应该提交的东西 我如何让 Mercurial 忘记这些东西并再次将我的存储库缩小到合理的大小 我是否
  • C# 中的非对称加密示例

    我需要通过 TCP 连接将机密数据发送到服务器 我做了很多研究并且理解了理论部分 根据我的研究 我想做以下事情 注意有一个服务器和一个客户端 我们假设客户端或服务器的公钥可以被任何人获取 客户创建他的公钥和私钥 他能够用他的私钥加密并用他的
  • 不带值的 MediaWiki URL 参数

    The query的一部分URL似乎由键值对组成 并由相关联 我一直习惯使用 jQuery param 函数对我的查询字符串进行 URL 编码 因为我发现它使我的代码更具可读性和可维护性 在过去的几天里 我发现自己在调用 MediaWiki
  • SimpleDateFormat 类中有哪些可用的日期格式?

    谁能告诉我 SimpleDateFormat 类中可用的日期格式 我已经浏览了 api 但找不到满意的答案 非常感谢任何帮助 下面详细描述了日期和时间格式 SimpleDateFormat Java Platform SE 7 日期和时间模
  • 如何将 String 上的 PageRequest 作为数值进行排序

    我目前有一个系统 可以过滤和排序数据库中的记录并将它们作为分页对象返回 其中一行是这样的 final PageRequest request new PageRequest this pagingSettings getPageNumber
  • 已知起点、终点和半径,如何求圆弧圆周上的点?

    请参阅下图以直观地了解我的问题 我有点 1 和 2 的坐标 它们是通过使用其他可用信息的公式得出的 参见问题 如何计算已知半径和圆心的圆上的点 我现在需要做的 与轨道建设分开 是将点 1 和点 2 之间的点绘制为绿色 这样做的最佳方法是什么
  • Cordova 6.4.0 Android 构建发布 apk 时出错

    我有一个项目在 cordova 6 3 1 上运行良好 然后我将 cordova 和我的项目更新到 6 4 0 在此之后 我第一次构建时 gradle 也自动更新了 现在我遇到一个重要的问题 我需要在 build json 文件中包含密钥库
  • MousePressEvent,QGraphicsView中的位置偏移

    我有一些困难QGraphicsView and QGraphicsScene 当我缩放 取消缩放场景并使用 mousePressEvent 创建项目时 我的位置有一个偏移 如何避免这种情况 event pos 似乎是问题 from PyQt
  • 如何使用 selenium 3.0.0 beta 关闭 geckodriver

    环境 Win 7 Selenium 3 0 0 测试版 FireFox 49 0 1 System setProperty webdriver gecko driver C geckodriver exe WebDriver driver
  • Apache ProxyPass 未加载资源

    我配置了 apache proxypass 它可以工作 但无法加载图像 javascript CSS 等 我想 proxypass 到另一台服务器 而不是本地主机 以下是我的配置 查看错误图像
  • Google 地图 API 的服务帐户

    On the Google 云身份验证概述页面上对云服务进行了以下说明 对于几乎所有情况 无论您是在本地开发还是在外部开发 生产应用程序 您应该使用服务帐户 而不是 用户帐户或 API 密钥 考虑到这一点 我的问题是 当使用 Google
  • 异常处理 ASP.NET MVC Web API

    首先 是的 我们已经创建并正在使用一个继承自 ExceptionFilterAttribute 的异常过滤器 它会在应用程序启动时在我们的身份过滤器之后立即注册到配置中 并且如果我们的 API 内部某个地方发生错误 它的工作效果几乎与预期一
  • 如何处理 Web 驱动程序 Selenium python 浏览器或应用程序可能不安全的问题?

    我正在尝试自动登录 Gmail 但看到此错误 我认为这一定是因为该网站能够检测到自动化并阻止它 大家能告诉我如何克服这个问题吗 我的个人帐户没有发现此问题 但只有普通帐户才会出现此问题 In you account profile in S
  • 在 kableExtra() 中设置字幕格式

    是否可以将字幕格式设置为kableExtra 我想在编织时将表格的标题居中并加粗HTML in RMarkdown 我试图将桌子包裹起来CSS div文本居中的位置 但这并没有产生预期的结果 样本表 library kableExtra k
  • python下载速度极慢

    有没有办法提高Python上的url下载速度 我有一个用 VB6 编写的程序 无需尝试即可使用 Python 我已经转换了这个东西 现在正在尝试 Python linux 中的东西似乎慢得多 时间是原来的两倍 即使是该程序的初始版本似乎也比
  • Flutter 如何改变ListView中鼠标滚轮的滚动速度?

    我是初学者 我正在 Windows 下编写一个关于 Flutter 的应用程序 问题是 ListView 中的文本通过鼠标剪辑滚动得太慢 我尝试覆盖 ScrollPhysics 但没有成功 请提供一种改变滚动速度的工作方法 对于找到这篇文章
  • 通过Java JDBC连接Hive

    这里有一个问题从 java 连接到 Hive但我的是不同的 我的配置单元在 machine1 上运行 我需要使用在 machine2 上运行的 Java 服务器传递一些查询 据我了解 Hive 有一个 JDBC 接口 用于接收远程查询 我从
  • JSX 元素类型没有任何构造或调用签名。打字稿

    In case compose使用时出现错误JSX element type Option does not have any construct or call signatures redux 版本 3 7 2 import as Re