gpt4 book ai didi

javascript - react 组件与两组 child

转载 作者:数据小太阳 更新时间:2023-10-29 05:22:00 24 4
gpt4 key购买 nike

我正在创建一个组件,它需要接收两组子组件并放置在组件的两个不同部分。

let CreditCardForm = ({icons, fields}) => (
<div>
<div className='some'>
<div className='special'>
<div className='nesting'>
{icons}
</div>
</div>
</div>
{fields}
</div>
)

let CreditCardFormUsage = () => {
let icons = () => (
<Icons>
<IconBogus/>
<IconVisa/>
<IconPaypal/>
<IconMore/>
</Icons>
)

let fields = () => (
<CreditCardFields>
<FieldCardNumber/>
<FieldName/>
<FieldExpirey/>
<FieldCCV/>
</CreditCardFields>
)
return (
<CreditCardForm icons={icons} fields={fields}/>
)
}

上面的代码应该可以工作,我的问题是是否可以根据元素本身的子项获取这些属性值,并获得更自然的东西?

<CreditCardForm>
<Icons>
<IconBogus/>
<IconVisa/>
<IconPaypal/>
<IconMore/>
</Icons>
<CreditCardFields>
<FieldCardNumber/>
<FieldName/>
<FieldExpirey/>
<FieldCCV/>
</CreditCardFields>
</CreditCardForm>

最佳答案

是的,this.props.children 将返回一个数组,因此如果您总是想加载特定的子项,那么只需在包装器中通过索引引用这些子项。然后你可以将 iconsfields 变成包装器组件。这是一个工作 jsfiddle .看看 Apprender 方法如何正是您想要的。

CreditCardForm 渲染:

<div>
<div className='some'>
<div className='special'>
<div className='nesting'>
{this.props.children[0]}
</div>
</div>
</div>
{this.props.children[1]}
</div>

字段和图标渲染:

<div>{this.props.children}</div>

应用渲染:

<CreditCardForm>
<Icons>
<IconBogus />
</Icons>
<Fields>
<FieldCardNumber />
<FieldName />
</Fields>
</CreditCardForm>

关于javascript - react 组件与两组 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35181333/

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