2017-10-05 1 views
0

私はシングルページアプリケーションでアプリケーションを持っています。 私はまた、登録と外部のログを持っています。クラスとTypescriptの1ページ分のデザインパターン

1.standardシングルトンパターン:

私は私がログインと登録とパスワードの回復のために使用すべきかどうかを知りたいのです。

export class Register { 
    foo(): any {} 
} 

2.orかもしれないが、Register.tsなどの "export function foo"のみ?

export function foo: any {} 

3またはすべてがモジュールに登録されています。

module Publics { 
    export module Register { 
     export function foo(): any { 
      // ...    
     } 
    } 
    export module Login { 
     export function foo(): any { 
      // ...    
     } 
    } 
} 

それは一般的な機能を備えた1ファイルの追加、PublicCommons.tsです...

+1

解決策2。キーワード 'module'を使わないでください。モジュールではなく' namespace'です。 – Paleo

答えて

1

活字体のユートピアはきちんとグローバルスコープに寄与することなく整理にすべてを保つのモジュール、中に発見されました。この理想的な世界では、あなたが持っているでしょう...

regsister.ts

export function foo() { 

} 

//... other registration related code 

login.ts

この場合
export function foo() { 

} 

//... other login related code 

、以前として知られている任意の名前空間を(必要はありません(以前は外部モジュールと呼ばれていた)モジュールを使って "名前空間より優れていました"ように、

あなたのモジュールの各々は、例えば、import文とその依存関係を明示的に行います

import { foo } from './register'; 

あなたはまだあなたの開発者のワークフローの一部として、単一のファイルに出力をバンドルするオプションを持っています...かモジュールローダを使用して実行時にモジュールをそのまま維持することができます。小規模なファイルをロードする必要がある場合、小さな単位のキャッシング可能性は悪いことではありません。

関連する問題