首页 > 解决方案 > 在打字稿中为 HTML 动态分配一个属性

问题描述

我刚刚安装了 Typescript,并正在尝试将其部署到现有项目中。我正在尝试为使用样式组件创建的 div 组件(Header.Arrow)动态分配“名称”属性,不幸的是,由于发生错误,这是不可能的:

输入'{角色:“按钮”;名称:字符串;“咏叹调标签”:字符串;}' 不可分配给类型 'IntrinsicAttributes......

类型“IntrinsicAttributes & .......”上不存在属性“名称”


import { Container, Arrow, Frame, Logo } from './styles/header';

const Header = ({ children, ...restProps }: {children: React.ReactNode}): JSX.Element => {
  return <Container {...restProps}>{children}</Container>;
};

Header.Arrow = function HeaderArrow({ action, ...restProps }: {action: string}) : JSX.Element {
  return (
    <Arrow
      role="button"
      name={action === 'previous' ? 'previous' : 'next'}
      aria-label={action === 'previous' ? 'previous' : 'next'}
      {...restProps}
    />
  );
}; 

可能是什么原因?“aria-label”和“role”属性不会导致错误

标签: javascriptreactjstypescript

解决方案


推荐阅读