为了账号安全,请及时绑定邮箱和手机立即绑定

React 无法识别 DOM 元素上的 `isActive` 属性 - 样式组件

React 无法识别 DOM 元素上的 `isActive` 属性 - 样式组件

慕村225694 2021-11-25 15:54:09
我有以下svg组件,我在其中传递道具。import React from 'react';export default (props) => (  <svg {...props}>    <path      d="M11.5 16.45l6.364-6.364"      fillRule="evenodd"    />  </svg>);然后我有一个styled-component看起来像这样的。const Icon = styled(_Icon)`  ${props =>    props.isActive &&    css`      transform: rotate(-180deg);    `};`;我看到以下react错误。警告:React 无法识别isActiveDOM 元素上的prop。
查看完整描述

2 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

const StyledIcon = styled(({ isActive, ...props }) => <Icon {...props} />)`

  ${props =>

    props.isActive &&

    css`

      transform: rotate(-180deg);

    `};

`

是不是更简单的解决方案,它也可以防止属性不必要地呈现到 DOM


查看完整回答
反对 回复 2021-11-25
?
森栏

TA贡献1810条经验 获得超5个赞

我在使用样式组件时遇到了同样的问题,最后我做了这样的事情:


<Icon isactive={isActive.toString()} />


${props =>

  props.isactive === 'true' &&

  css`

    transform: rotate(-180deg);

  `};

}


查看完整回答
反对 回复 2021-11-25
  • 2 回答
  • 0 关注
  • 217 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信