首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包裹Antd元件

包裹Antd元件
EN

Stack Overflow用户
提问于 2017-09-13 04:37:48
回答 1查看 215关注 0票数 0

我想包装antd组件。Input到MyInput中,这样我就可以添加对新的专业人士和classNames的支持,但是当我把它放在Form里面时,它就停止了工作。

MyInput.js

代码语言:javascript
复制
import { Input } from 'antd';

function MyInput({ className='', ...rest }) {
  const computedClassName = 'my-input '+className;

  return (
    <Input className={computedClassName} {...rest} />
  );
}

MyInput.defaultProps = Input.defaultProps;
MyInput.propTypes = Input.propTypes;
MyInput.Group = Input.Group;
MyInput.Search = Input.Search;
MyInput.TextArea = Input.TextArea; 

如果我把<MyInput />放在<Form/>里面,它就停止工作了

演示

我尝试过调试,看起来rc-form/lib/createBaseForm中的saveRef函数接收空作为组件参数,因此我觉得这是一个参考问题,但我不知道如何修复它:S

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-13 06:11:28

但我找到了答案..。

根据参考文献文档

refs不工作于无状态组件,将其更改为类并工作

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46188938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档