2017-08-05 9 views
1

大規模なReact JavascriptプロジェクトをTypeScriptに変換するプロセスが進行中です。JavaScriptで定義されたReactクラスをインポートするときに、TypeScriptでReact Props型のエラーを回避するにはどうすればよいですか?

我々が定義する既存のファイルを持っているが、クラスリアクト:

// foo.js 
class Foo extends React.Component { ... } 

module.exports = Foo 

をそして、我々は我々の新しい活字ファイルにこれらのコンポーネントを使用したいと思います:

// bar.tsx 
import Foo from "./foo" 

export default class Bar extends React.Component<any, any> { 
    render() { return <Foo baz="buzz" /> } 
} 

しかし、これはエラーにつながる:

Property 'bar' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<Foo> & Readonly<{ children?: ReactNode; }> & Read...'.

sのエラー?ファイルを変更するたびにファイルをTypeScriptに変換しますが、の場合は元のファイルに含まれるファイルを変更する必要があります。

答えて

0

宣言ファイルuntyped-components.d.tsを追加してこの問題を修正しました。

declare module "foo" { 
    const Foo: any 
    export = Foo 
} 

... 

declare module "zap" { 
    const Zap: any 
    export = Zap 
} 

そして今、我々は、このファイルから削除しますファイルを変換するたびにこのファイルでは、我々はすべての型指定されていないコンポーネントの宣言を追加しました。

関連する問題