Reactjs 为什么它会抱怨类型{intrinsicattributes&;true}或类型{intrinsicattributes&;false}不能使用react和typescript赋值?
我有如下代码Reactjs 为什么它会抱怨类型{intrinsicattributes&;true}或类型{intrinsicattributes&;false}不能使用react和typescript赋值?,reactjs,typescript,Reactjs,Typescript,我有如下代码 function Parent() { const count1 = 2; const count2 = 4; const isCount = count1 < 0 || count2 < 0; //setting isCount here return show ? ( <Dialog> <Body>soemthing</Body>
function Parent() {
const count1 = 2;
const count2 = 4;
const isCount = count1 < 0 || count2 < 0; //setting isCount here
return show ? (
<Dialog>
<Body>soemthing</Body>
<Actions
isAdminAndisCount={isAdminAndisCount}
>
{((isAdmin && !isCount) || !isAdmin) && (
<Text onClick={onHide}>Close</Text>
)}
{isAdmin ? ( //to refactor this
isCount ? (
<a href="eee">email us</a>
) : (
<a href="mmm">add</a>
)
) : null}
</Actions>
</Dialog>
) : null;
}
函数父函数(){
常数count1=2;
常数count2=4;
const isCount=count1<0 | | count2<0;//在此处设置isCount
回归秀(
苏姆廷
) : (
)
):null}
):null;
}
这很好,但是重构了这段代码
{isAdmin ? ( //to refactor this
isCount ? (
<a href="eee">email us</a>
) : (
<a href="mmm">add</a>
)
) : null}
**TO**
const RenderLink = ( isCount: boolean ) =>
isCount ? <a href="eee">email us</a> : <a href="mmm">add</a>;
{isAdmin && <RenderLink isCount={isCount} />} //here is the error
{isAdmin?(//重构此
我算(
) : (
)
):null}
**到**
常量RenderLink=(isCount:boolean)=>
isCount?:;
{isAdmin&&}//这里是错误
但这显示了我们的电子邮件链接,即使!我算了一下,我看到了错误
错误“类型{isCount:boolean不可分配给类型{intriniscattributes&&false}或类型
{本质属性&&true}
有人能帮我解决这个问题吗。谢谢。React功能组件中的第一个参数是它们的道具,它是收到的道具的对象。因此更改此行:
const RenderLink=(isCount:boolean)=>
致:
界面道具{
isCount:布尔值
}
常量RenderLink:React.FC=({isCount})=>
isCount
是一个布尔值,而intriniscattributes
不是布尔值。使用!!intriniscattributes
将其转换为布尔值。谢谢,但请不要获取它。我应该在哪里添加它。这里
如何设置isCount值?我已经编辑了这个问题。还将isCount值记录在RenderLink组件g中这是因为如果isAdmin
为false,那么{isAdmin&&}
将为false,这不是React组件?您可以尝试{isAdmin?:null}
。是的,这可能是通过销毁props对象的解决方案。