2017-09-14 6 views
0

は、私は以下のようなタイプのようなツリーを書いた:TypeScriptでツリータイプを定義する方法は?

type ReactNode = ReactChild | Array<ReactNode> 

が、エディタは私に言ったこと

TS2456:型別名 'ReactNode' 循環参照そのもの。

解決方法このエラーを解決しますか?

答えて

1

まもなくthis issueで説明したように型の別名で再帰の問題は、あります:

型の別名は、インタフェースのようではありません。インターフェイスは名前タイプ です。タイプエイリアスはエイリアスだけです。内部的には の扱いが異なるため、コンパイラは積極的に型の別名 をその宣言にフラット化します。

allow recursive generic type aliasesの説明があります。

interface ReactNodeArray extends Array<ReactNode> {} 

type ReactNode = ReactChild | ReactNodeArray; 
:あなたのケースでは

、あなたのような何かを行うことができます

関連する問題