2017-04-25 5 views
0

私はRedux-Formを使用していて、<Field>のコンポーネントを使用しています(Redux-Formサイトの同期検証の例のように:http://redux-form.com/6.0.0-rc.1/examples/syncValidation/)。TypescriptでのRedux-Formの使用WrappedFieldProps <S>インターフェイスを使用したいですが、エクスポートされません。私はそれを間違っているのですか?

私はTypescriptを使用していますので、renderField関数のパラメータをタイプしたいと思います。パラメータのタイプは、インターフェイスWrappedFieldProps<S>に基づいているように見えますが、そのインターフェイスはエクスポートされないため、使用できません。

私はWrappedFieldProps< S>を使いたいと思っていますか、それとも良い方法がありますか?

例コード:

interface RenderFieldProps extends WrappedFieldProps<AppState> { 
    placeholder: string, 
    type: string, 
}; 

public render(): JSX.Element { 
    return (
     <form onSubmit={this.props.handleSubmit(this.handleFormSubmit)}> 
      <Field name="email" component={this.renderField} type="text" placeholder="Add your email address"/> 
      <button type="submit">Submit form</button> 
     </form> 
    ); 
} 

private renderField = (props: RenderFieldProps) => (
    <div> 
     <input {...props.input} placeholder={props.placeholder} type={props.type}/> 
    </div> 
); 

答えて

1

私はどこにあなたのタイプの定義を手に入れたかわからないけど、あなたはthis repositoryでindex.d.tsをチェックすると、あなたはWrappedFieldPropsはこのラインでエクスポートされていることがわかります。

export * from "./lib/Field"; 

だから、基本的には、使用してそれをインポートすることができます。

import {WrappedFieldProps } from "redux-form"; 
関連する問題