クラスに実装しないで特定の関数があることを宣言できますか?Typescript:実装しないで関数を宣言する
私はこのクラスを作成してから、いくつかの機能を追加するjsフレームワークに渡すので、これが必要です。リダイレクトやキャストなど、それらを再実装することなくこれらの関数を呼び出すこともできます。
例:
//example class
class AppComponent {
constructor() {}
}
//create class
var comp: AppComponent = new AppComponent();
//hand over to framework
fw.define("Component", comp);
//now I want to be able to call the added functions such as:
comp.setModel(/*some model*/);
私はあなたがこれらのメソッドを持つ 'interface'とfw.define''の呼び出しはちょうど再びあなた 'comp'を与える(そのインターフェイスのオブジェクトを返すように入力することができますが、あなたができる持っていることができますね型付きの第2の変数に割り当てます)。または、単に 'comp'をそのインタフェースにキャストしてください(おそらく' any'を介して)。 – Thilo
残念ながら 'define'は何も返しません。 thatsなぜd.tsファイルに定義されている 'sap.ui.core.mvc.Controller'(フレームワークSAPUI5)にキャストしているのですか?最も簡単な方法は、 –
'クラスに特定の機能が実装されていないことを宣言する 'の両方を組み合わせる方法です:それは[抽象クラス](https://www.typescriptlang.org/docs/handbook/classes.html)となります –