10
A
答えて
20
さて、これはCoffeeScriptのが持っている落とし穴のものであってもよい:ここでは
class NewsItem
content: ko.observable("")
は、あなたが観測可能なオブジェクトであるプロパティ「コンテンツ」を使用して新しいクラスを作成しています。これは次のJavaScriptにコンパイルされます。
var NewsItem = (function() {
function NewsItem() {}
NewsItem.prototype.content = ko.observable("");
return NewsItem;
})();
ここからわかるように、プロパティ「content」はプロトタイプに添付されています。つまり、インスタンスごとに1つではなく、作成されるオブザーバブルが1つだけです。したがって、いつでもnew NewsItem
を実行すると、コンストラクタはプロトタイプ内のこの単一のオブザーバブルを更新します。したがって、すべてのインスタンスに対して同じ値が更新されます。
これを解決するには、コンストラクタでobservableを作成するだけです。
class NewsItem
constructor: (data,dispForm) ->
@content = ko.observable data.get_item("content")
が(関連部分)にコンパイル:その方法は、それがのインスタンスにアタッチ、ないプロトタイプを取得
this.content = ko.observable(data.get_item("content"));
関連する問題
- 1. ノックアウト:観測可能
- 2. 観測可能な配列内のノックアウト観測可能なオブジェクト
- 3. ノックアウト観察可能な観測可能な配列の配列
- 4. ディザコピー可観測配列ノックアウト
- 5. ノックアウト観測のアクセスプロパティ
- 6. 観測可能
- 7. 項目の順序を示すノックアウト観測可能なフィールド
- 8. observableArray他の観測可能なノックアウトに基づいて
- 9. 観測可能な配列によるノックアウトの検証
- 10. ノックアウト観測可能な宣言の方法
- 11. ノックアウト:観測可能な配列のゼロを検索する
- 12. ノックアウト観測可能な配列を拡張する
- 13. jsonをノックアウト観測可能な配列にプッシュ
- 14. ノックアウト除去率は観測可能からリミット
- 15. KnockoutJS - 観測可能なオブジェクトの観測可能配列
- 16. ノックアウトの観測リストのソート
- 17. RxJava観測可能
- 18. ノックアウト観測値の更新
- 19. 観測可能なデータを観測可能な配列にプッシュノックアウト
- 20. RXJSで観測可能な内部観測オブザーバブルの受信可
- 21. は、別の観測可能なものに観測可能です。
- 22. 返さ観測可能
- 23. カスタムコルドバpushNotificationラッパー観測可能
- 24. 観測可能な角型
- 25. 観測可能なサポートレスキュープル
- 26. LatestFromで観測可能
- 27. オブジェクトで観測可能Angular2
- 28. 観測可能なレイジーランダムジェネレータ
- 29. 観測可能なタイムアウト
- 30. .mapで観測可能
私は、これは、それが行われるべきか常にあると思います。 – Tyrsius
@Tyrsiusそれは依存しています - 特定のインスタンスごとに独自のクラスメンバーが必要な場合(私は同意する必要があります。あなたは違いを知る必要があります。 – Niko
静的なプロパティが必要な時がありますが、これはルールではなく例外でなければなりません。 – Tyrsius