2 回答
TA贡献1869条经验 获得超4个赞
我刚刚遇到了一个非常相似的问题。事实证明,我根据子组件上的属性类型(或者可能是 TypeScript 的推断?)调用了带有无效属性的 JSX 子组件。
const profile = someQuery.profile || {id: -1, name: "Guest"}
//...
<SubComponent profile={profile} />
id这里应该是一个字符串,而不是数字。谈到-1为"-1"解决我的问题。
TA贡献2003条经验 获得超2个赞
结果证明这是两个问题的组合:
首先,错误Type 'string' is not assignable to type 'ElementType<HTMLAttributes<HTMLElement>>'指的是一个完全不同的组件,一个正在使用material-ui Typography组件的组件,这里已经提出并回答了一个问题:Typography component。当我添加这张票时,我在尝试一些事情的同时升级了我的依赖项,material-ui然后新版本抛出了这个新错误。
其次,在组件内Property 'profileName' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<Pick<RouteComponentProps<any, StaticContext, any>, never>, any, any>> & Readonly<Pick<RouteComponentProps<any, StaticContext, any>, never>> & Readonly<...>'. 渲染.js组件时出现的错误.tsx确实使用我已经包含在我的问题中的语法被消除了:
/* tslint:disable */
const JSProfileDetails: any = ProfileDetails;
/* tslint:enable */
return (
<JSProfileDetails
profileName={profileName}
profileDetails={profileDetails}
profileInitialValues={profileInitialValues}
/>
感谢您抽出宝贵时间提供意见。
添加回答
举报