2017-04-27 6 views
1

私のテストでは、React、material-ui、Flow、Jestのスナップショットを使ってセットアップしました。TypeScript material-uiは@typesで定義されていない小道具を許可します

一貫性のあるスナップショットを作成するために、私はマテリアルUIコンポーネントでIDを定義する必要がありました。それ以外の場合、それらは自動生成され、毎回異なります。

ので、私はこれをしなかった: <Card style = { style } id = { id ? $ {ID}は、これがうまく働いた: null }>

を-card。今私はTypeScriptに切り替えていて、@ types/material-uiを持っています。活字体は、ID小道具について不平を言っている:

[ts] Property 'id' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<Card> ...

私が何か間違ったことをやっていますか?これを抑える方法はありますか?コンポーネントがIDを渡すことをサポートしていることは分かっています。

答えて

0

は私がtypings/material-ui/index.d.ts作成することになった、これは私の問題を修正し

"include": [ "./components/**/*", "./typings/**/*" ],

1

source code for that definitionを見ると、実際にはid属性はサポートされていません。

これがエラーであると思われる場合は、私はプルリクエストをDefinitelyTypedに提出します。

declare namespace __MaterialUI 
{ 
    interface SelectFieldProps 
    { 
     multiple?: boolean; 
     selectionRenderer?: (values: any[]) => string; 
    } 

    namespace Card 
    { 
     interface CardProps 
     { 
     id?: string; 
     } 

     interface CardHeaderProps 
     { 
     id?: string; 
     } 

     interface CardTitleProps 
     { 
     id?: string; 
     } 

     interface CardActionsProps 
     { 
     id?: string; 
     } 

     interface CardTextProps 
     { 
     id?: string; 
     } 
    } 
} 

とのTSconfig:

関連する問題