私はデータを扱うクラスを持っています。他のクラスはその値を与えることができ、データクラスはそれを設定します。コールバック付きのキャッシュパターン
それは次のようになります。私は直面しています問題は、私が追加したすべての方法は、製品が存在するかどうかを確認しなければならないことである
class Data
constructor : ->
@products = null
populateProducts : (callback)=>
ajaxCall (data)=>
@products = data
callback()
allProducts : (list)=>
if @products?
list = @products
else
@populateProducts => allProducts list
。だから私はコードのその部分を再利用可能にする方法を検討しています。私が試した
一つの方法は、以下の通りであった:
productsCheck : (callback)=>
if @products?
callback()
else
@populateProducts => products callback
この方法を使用すると、私はallProducts簡素化することができます:最後に
allProducts : (list)=>
@productsCheck => list = @products
を私はありません技術を探しています:「製品はドンが」データベースからそれらを移入します。私はこれが既知のパターンかもしれないと考えていた可能性があります。
ああ、それを調べるのは素晴らしいことです。その名前を公に宣言する必要がないことを願っています。 – Pickels