ฉันมีคำถามง่ายๆเกี่ยวกับฟังก์ชันรับและตั้งค่า Backbone.js
1) ด้วยรหัสด้านล่างฉันจะ 'get' หรือ 'set' obj1.myAttribute1 โดยตรงได้อย่างไร?
คำถามอื่น:
2) ในโมเดลนอกเหนือจากอ็อบเจ็กต์ค่าเริ่มต้นฉันจะ / ควรประกาศคุณลักษณะอื่น ๆ ของโมเดลของฉันได้ที่ไหนเพื่อให้สามารถเข้าถึงได้ผ่านเมธอด get and set ของ Backbone
var MyModel = Backbone.Model.extend({
defaults: {
obj1 : {
"myAttribute1" : false,
"myAttribute2" : true,
}
}
})
var MyView = Backbone.View.extend({
myFunc: function(){
console.log(this.model.get("obj1"));
//returns the obj1 object
//but how do I get obj1.myAttribute1 directly so that it returns false?
}
});
ฉันรู้ว่าฉันทำได้:
this.model.get("obj1").myAttribute1;
แต่เป็นการปฏิบัติที่ดีหรือไม่?
defaults
(obj1 ในกรณีนี้) วัตถุเดียวกันนั้นจะถูกแชร์ในทุกอินสแตนซ์ของโมเดล แนวทางปฏิบัติในปัจจุบันคือการกำหนดdefaults
เป็นฟังก์ชันที่ส่งคืนวัตถุที่จะใช้เป็นค่าเริ่มต้น backbonejs.org/#Model-defaults (ดูโน้ตตัวเอียง)