2013-12-18 3 views
2

В чем разница между свойствами и атрибутами модели Backbone.Backbone.js - Свойства vs Атрибуты

Я считаю, что использовать атрибуты для запуска изменений модели, когда модель будет изменена.

В приведенном ниже примере.

var Vehicle = Backbone.Model.extend({prop1:'1'}); 
var v1 = new Vehicle({prop1 : '1111'}); 
console.log(v1.prop1); // accessing the property 
console.log(v1.get('prop1')); // accessing the attribute 

Объект v1 имеет как свойство, называемое prop1, а также атрибут, называемый prop1. Между ними нет никакой связи.

ответ

2

Разница в том, что свойство является языковой функцией (Javascript), тогда как атрибут является признаком рамки Backbone. Другими словами, свойство существует независимо от Backbone, тогда как атрибут основывается на структуре Backbone и ее инфраструктуре.

В частности, атрибуты участвует во всех модельных связанных вещах в:

  • синхронизация (при вызове save или fetch)
  • проверки при сохранении
  • вида рендеринга (через toJSON)
  • события и уведомление
Смежные вопросы