gpt4 book ai didi

reactjs - 何时使用 React.PropsWithChildren

转载 作者:行者123 更新时间:2023-12-03 09:31:25 28 4
gpt4 key购买 nike

在我看来像是两个相似的设置,在一台机器上我被允许调用

<MyApp
accountId={this.props.accountId}
children={toggleButton} />

MyApp 有类签名的地方
export interface IMyAppProps {
accountId: string;
dispatch: any;
}
class MyApp extends React.Component<IMyAppProps, IMyAppState> {

在另一台机器上,运行 npm run-script build失败

TypeScript build error TS2322: Type ' ... ' is not assignable to type ' ... '

Property 'children' does not exist on type 'IntrinsicAttributes & Pick<IMyAppProps, "accountId">'



两台机器上使用的版本 react-scripts-ts 4.0.8,typescript 3.4.5。

将类定义更改为此使其在两台机器上都可以使用
class MyApp extends React.Component<React.PropsWithChildren<IMyAppProps>, IMyAppState> {

我不确定为什么它适用于一种设置而不适用于另一种设置。我什么时候在 React.PropsWithChildren 中包装我的 Prop 界面?

我最好的猜测是,可以在 React 或 React 相关包的类型文件中找到更改。

最佳答案

我不知道为什么它可以在一台机器上工作,而在另一台机器上却不能,但我认为这不是使用 children 的正确方法。属性(property)。
而不是这个...

<MyApp
accountId={this.props.accountId}
children={toggleButton} />
...我认为 children的目的是让你这样称呼...
<MyApp accountId={this.props.accountId}>
<ToggleButton/>
</MyApp>
... 或类似的东西。
child 或 child - <ToggleButton/>在我上面的例子中——可能是一个 React 元素,或者文本(一个文本节点),或者 undefined如果没有 child ,或者可能是像 {toggleButton} 这样的表达式它评估为子类型之一。

关于reactjs - 何时使用 React.PropsWithChildren,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58881263/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com