1

の依存関係に問題がありTypeScriptます。すべてを機能させるためにそれらをソートする方法は?そのためのツールはありますか?

問題は次のようになります...私は2つのモジュールを持っています:

module Module1 {
   export class A {
   }

   export class B {
   }
}

module Module2 {
   export class C {
   }

   export class D {
   }
}

Module1からのクラスをModule2使用し、 からのクラスをModule2使用しますModule1。つまり、ここでは一種のサイクルです (モジュール上)。これをコンパイルするとJavaScript、エラーが発生します。

Microsoft JScript runtime error: 'Module2' is undefined

Module2 JS参照を に含める必要があるためModule1です。このようなサイクルがある場合、問題を解決するにはどうすればよいですか? 出来ますか?

4

2 に答える 2

2

オブジェクト指向プログラミングでは、依存関係が一方向に流れていると役立ちます。Module1 が Module2 に依存し、Module2 が Module1 に依存していると、循環依存を許可する言語でも問題が発生します。

Module3 に依存せずに、Module1 と Module2 の両方に依存する Module3 を使用することで、問題を解決できるはずです。この例では、B は C に依存し、D は A に依存していると想定しています。

module Module1 {
   export class A {
   }
}

module Module2 {
   export class C {
   }
}

module Module3 {
   export class B {
   }

   export class D {
   }
}

もう 1 つの解決策は、これら 2 つのモジュールにこれほど多くの依存関係がある場合、おそらく単一のモジュールである必要があることを受け入れることです。

module Module1 {
   export class A {
   }

   export class B {
   }

   export class C {
   }

   export class D {
   }
}
于 2013-01-11T10:28:24.913 に答える