Typescript reactjs无法将道具传播到输入标签

Posted

技术标签:

【中文标题】Typescript reactjs无法将道具传播到输入标签【英文标题】:Typescript reactjs Can't spread props to input tag 【发布时间】:2019-06-21 12:05:29 【问题描述】:

我有一个可在整个应用程序中使用的可重用输入组件

import * as React from 'react';
import styles from "./Input.module.css";

interface Props 
  input: Object;
  label: string;
  custom: Object;
  meta: 
    touched: boolean;
    error: boolean;
  


    const Input: React.SFC<Props> = (
      input,
      label,
      custom,
    ) => (
        <div className=styles.container>
          <input ...input ...custom />
          <span className=styles.highlight />
          <span className=styles.bar />
          <label>label</label>
        </div>
      );

    export default Input;

我正在将一个旧的 javascript 项目从 javascript 转换为 typescript。一切正常,除了当我将道具传播到输入标签中时,打字稿返回此错误。

知道是什么导致了错误吗?

【问题讨论】:

【参考方案1】:

javascript 对象类型具有“isPropertyOf”、“hasOwnValue”等不适合输入元素的属性, 尝试更改为:

 input: 
test: string,
id: Number

【讨论】:

以上是关于Typescript reactjs无法将道具传播到输入标签的主要内容,如果未能解决你的问题,请参考以下文章

Typescript + Svelte - 如何添加类型以传播组件道具

样式化的 MUI 无法在 typescript 中将组件道具传递给 Typography

react redux typescript:无法将继承的道具从父级传递到类容器

在反应导航 <drawerItems> 中传播道具

ReactJS setState 更改不会从父组件传播到子组件[重复]

使用 Typescript(TSX 文件)将道具传递给 React 中的子组件