0

インスタンスをclose閉じる関数があります。関数を含むクラスでは、派生クラスがオーバーライドできますclose。ここで、派生クラスでもがclose常に呼び出されるようにします。dispose私はこれを次のように達成します。

function close() {
  closeCore();
  dispose();
}

function closeCore() {
  // derived class can override this method.
}

これは問題なく動作しますが、インスタンスを破棄する前に CSS アニメーションを実行したい場合が 1 つあります。これが私がすることです。

function close () {
  instance.classList.add("fancy-animation-that-takes-800ms");

  setTimeout(function () {
    dispose();
  },800);
}

しかし、これを行うとすぐに、使用しているテンプレート パターンを適用できません。2 番目の例で、close 関数が常に dispose を呼び出すようにする方法はありますか?

4

1 に答える 1