7
常に同等の機能を使いますか?バックボーンの属性とtoJSONメソッドの違い
class Model extends Backbone.Model
defaults:
some: 'thing'
other: 'item'
model = new Model
console.log model.attributes
console.log model.toJSON()
常に同等の機能を使いますか?バックボーンの属性とtoJSONメソッドの違い
class Model extends Backbone.Model
defaults:
some: 'thing'
other: 'item'
model = new Model
console.log model.attributes
console.log model.toJSON()
toJSON()コンソールと同じもので、これらのプリントは、オブジェクトをシリアル化するときのJavaScript JSONシリアライザを探し標準的な方法です。
バックボーンのコンテキストでは、モデルでtoJSONを上書きすると、保存時にサーバーに送信される値の形式を変更できます。たとえば、タイムスタンプのような読み取り専用フィールドを除外することができます。
attributesは、model.set()を使用すると変更されるモデルデータを含むJavaScriptオブジェクトです。値を変更するためにset()を使用しない場合を除いて、すべてのイベントをバイパスし、バックボーンの利点の一部を失います。あなたが何をしているのかを知っている場合にのみ、属性を直接使用してください。