mardi 28 juin 2016

Private variables in Ember-data DS.Model

I want to store a private variable on each DS.Model. Its purpose is to store a pending callback (in case I want to cancel it).

I have tried this (and it works):

DS.Model.reopen({
  init() {
    let _pending; // my private var

    this._getPending = () => _pending;                   // get private var
    this._setPending = callback => _pending = callback;  // set private var

    this._super(...arguments);
  }
});

I have placed this in an initializer, and it works as I expect it to.

My questions are: Is this a good practise? ...and, is there a better way?

Personally, I'm happy with the way it works.. but I'm not sure if its the "Ember" way. This is going to go into an Ember-cli addon, so I would like it to be the most "best practise" as possible. (the _getPending/_setPending method are only to be used internally within the addon.)




Aucun commentaire:

Enregistrer un commentaire