mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-27 14:30:49 +08:00
Export BaseFieldProps
This commit is contained in:
2
types/redux-form/lib/Field.d.ts
vendored
2
types/redux-form/lib/Field.d.ts
vendored
@@ -33,7 +33,7 @@ interface CommonFieldProps {
|
||||
onFocus: EventHandler<FocusEvent<any>>;
|
||||
}
|
||||
|
||||
interface BaseFieldProps<P = {}> extends Partial<CommonFieldProps> {
|
||||
export interface BaseFieldProps<P = {}> extends Partial<CommonFieldProps> {
|
||||
name: string;
|
||||
component?: ComponentType<P> | "input" | "select" | "textarea",
|
||||
format?: Formatter | null;
|
||||
|
||||
@@ -11,6 +11,7 @@ import {
|
||||
formValueSelector,
|
||||
Field,
|
||||
GenericField,
|
||||
BaseFieldProps,
|
||||
WrappedFieldProps,
|
||||
Fields,
|
||||
GenericFields,
|
||||
@@ -125,6 +126,11 @@ const MyField: StatelessComponent<MyFieldProps> = ({
|
||||
};
|
||||
const FieldCustom = Field as new () => GenericField<MyFieldCustomProps>;
|
||||
|
||||
type FieldProps = BaseFieldProps<MyFieldCustomProps> & MyFieldCustomProps;
|
||||
const FieldCustomComp: StatelessComponent<FieldProps> = props => (
|
||||
<FieldCustom {...props} component={MyField} />
|
||||
)
|
||||
|
||||
const MyFieldImm: StatelessComponent<MyFieldProps> = ({
|
||||
children,
|
||||
input,
|
||||
@@ -262,6 +268,11 @@ const Test = reduxForm({
|
||||
foo="bar"
|
||||
/>
|
||||
|
||||
<FieldCustomComp
|
||||
name="field_4_comp"
|
||||
foo="bar"
|
||||
/>
|
||||
|
||||
<FieldImmutableCustom
|
||||
name="field4"
|
||||
component={ MyField }
|
||||
|
||||
Reference in New Issue
Block a user