TypeScriptのモジュールのゲッター/セッター



Getter Setter Module Typescript



解決:

現在、クラスに追加できるのはゲッターとセッターのみです。

TypeScriptがゲッターとセッターで使用するコード変換は、オブジェクトのプロトタイプにプロパティを追加します。これは、モジュールよりもクラスの方が理にかなっています。




これは、特別なを使用して可能ですexport = ...構文は次のとおりです。

class MyModule {get abc(){return'abc '; }} var myModule = new MyModule(); export = myModule;

これにより、クラスのインスタンスが作成されますMyModuleは、モジュールのAPIとして機能します。クラスにデータを入れる必要はありません。関数をクラスに移動するか、それ以外の場合は変更しないでください。欠点は、関数の場合です呼び出し関数bそれは言わなければならないでしょうthis.b()またはmyModule.b()(後者は通常のモジュールエクスポートに近いです)。



また、最初に名前付き変数を宣言する必要があります。あなたはただ言うことはできません:

export = new MyModule(); //これは機能しません 

次のように、クラスを介してゲッターを直接エクスポートできます。

//モジュールレベルのゲッターが使用可能な場合に削除されるヘルパークラスclass_someHelper {static get myStaticString():string {return'hi、world '; }} export const myStaticString = _someHelper.myStaticString;

次に、次のようにインポートします。



import {myStaticString} from'my-module ';

きれいではありませんが、機能します。