Perché ho bisogno di "riaprire" per impostare l'URL per un modello di dati ember?
-
12-12-2019 - |
Domanda
Ho trovato che se cerco di includere l'URL nella definizione originale di un modello di dati di ember che soffia nel mio adattatore di riposo ma se semplicemente "riaprennica" è bene.
Qual è la ragione tecnica alla base di questo?(sotto è l'esempio di funzionamento)
CodeCamp.Speaker = DS.Model.extend({
id: DS.attr('number'),
name: DS.attr('string'),
session: DS.belongsTo('CodeCamp.Session')
});
CodeCamp.Speaker.reopenClass({
url: 'sessions/%@/speakers'
});
. Soluzione
Chiamare extend
su un oggetto Imposta gli attributi di istanza, mentre reopenClass
Imposta gli attributi della classe.
L'attributo url
è un attributo a livello di classe,
Ember.get(CodeCamp.Speaker, 'url')
.
al contrario di:
speaker = CodeCamp.Speaker.createObject()
Ember.get(speaker, 'name')
. Altri suggerimenti
Nota Inoltre è possibile estendere un'istanza utilizzando semplicemente reopen
.Emberjs 'Docu contiene un esempio che trovi a http:// emberjs.COM / GUIDE / Object-Model / RiaPening-Classes-E-istanze /
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow