React 组件 pros 传参为什么会丢失 value 属性?

作者站长头像
站长
· 阅读数 7

现在想要传递一个初始化的表单数据到 useState 里而且表单里的字段是通过接口出来的,但现在根据文档参数被 {} 限制了,想问下额外的参数要怎么传递?<FormProvider>

 {form.item.map((item: Item, key: number) => (
    <Form.Item
        key={key}
        label={item.name}
        <Item {...item}/>
    </Form.Item>
))}
interface Item {
    name: string,
    column: string,
    value: any,
    container?: string,
    Attrs: Attr,
}

const Item: React.FC<Item> = ( props: Item ) => {

    console.log(props)

    switch (props.container) {
        case 'input':
            return <Design_Input {...props} />
    }

}

React 组件 pros 传参为什么会丢失 value 属性?

可以看到接口中是有 value 的但是到了组件里就没了?这是什么奇怪的问题?

React 组件 pros 传参为什么会丢失 value 属性?

回复
1个回答
avatar
test
2024-06-26

问题解决了:我用的是 antd-mobileForm 组件,表单控件的值必须通过 Form.IteminitialValue 来传递,否则想我传递过去也是 undefined

 <Form.Item
    key={key}
    label={item.name}
    name={item.column}
    initialValue={item.value !== null ? item.value : ""}
    <Item {...item}/>
</Form.Item>
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容