ホーム>source

次の標準TypeScriptクラスとプライベートメソッドについて考えてみます。

<前>ウィズウィズ

クラス内では、以下を使用してプライベートメソッドにアクセスします。

<前>ウィズウィズ

それ以外の場合は、クロージャー/イベント内にあります。その場合、クラス参照をキャッシュします。

<前>ウィズウィズ

もちろん、 "this"のいくつかの層があり、クラスのトップレベルに到達する必要がある場合、アプローチは失敗します。

それでは、クラスレベルのプライベートメソッド(またはクラスレベルの変数)にアクセスするための決定的な方法はありますか?

class foo { private doThis() { /// } }
あなたの答え
  • 解決した方法 # 1

    クロージャー内でアロー関数を使用します。

    <前>ウィズウィズ

    これは常にクラス参照になります。

    class foo { private doThis() { /// } otherFunction() { $('#foo').on('click', () => { this.doThis(); }); } }

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ node.js - Mongodbデータベース接続コードがアプリを壊す