В чем разница между инициализации и конструктор по позвоночнику модель | VPROS.ru

В чем разница между инициализации и конструктор по позвоночнику модель

В чем разница между инициализации и конструктор по позвоночнику модели.

Когда я выражаю позвоночника модель (ParentModel) я использую метод инициализации, чтобы установить все свойства по умолчанию. Но всякий раз, когда я создать модель, основанную на ParentModel я использовать конструктор, чтобы запускать любые первоначальной функциональности. Я делаю это, потому что это работает, но кто-то на работе спросил меня, почему я использую оба инициализации и конструктор, и у меня не было хорошего ответа, кроме его работы. Я мог бы потратить время на чтение хотя исходный код, чтобы понять, но казалось, гораздо проще здесь спросить и получить правильный ответ.

var ParentModel = Backbone.Model.extend({   initialize : function() {     // code here   }, });   var Model = ParentModel.extend({   constructor : function (options) {     Backbone.Model.prototype.constructor.call(this, options);     // code here    }, 

One Reply to “В чем разница между инициализации и конструктор по позвоночнику модель”

  1. constructor это функция, которая использует позвоночник настроить сам – создание моделей, настройка событий, и делать всевозможные другие настройки. Будьте очень осторожны, о переопределении этого, потому что, если вы предотвратите позвоночника код от запуска путем переопределения или слежка за способ, вы получите странные ошибки, которые трудно отлаживать.

    initialize с другой стороны-это функция, позвоночника призывает своих объектов, когда он закончил с ее внутренней сантехники. Если Вы не делаете ничего, что конкретно намеревался мешать нормальной функции позвоночника, просто использовать инициализировать.

    Если ты с помощью coffeescript, это может быть более интуитивно понятным в использовании constructor. (Это для меня). Просто убедитесь, что вы всегда звоните super хотя.

Comments are closed.