Quando si esegue l'override della sincronizzazione backbone, sia model/collection .save()/fetch() utilizza lo stesso metodo di sincronizzazione backbone, quindi qual è il modo migliore per verificare se ciò che riceve Backbone.sync è un modello o una collezione di modelli?Verificare se qualcosa è un modello o una raccolta in dorsale js
Per fare un esempio:
Backbone.sync = function(method, model, options){
//Model here can be both a collection or a single model so
if(model.isModel()) // there is no isModel or isCollection method
}
suppongo sto cercando una best practice "sicuro", ho potuto ovviamente assegno di determinati attributi o metodi che solo un modello o un insieme hanno, ma sembra hackish, non dovrebbe esserci un modo più ovvio? E probabilmente non riesco proprio a trovarlo.
Grazie!
Upvote perché stavo controllando su la proprietà 'length' (solo Collection ...?!?) ieri in qualche veloce codifica! Il confronto con 'model' è brillante in confronto. Haha. – eightyfive
Voi ragazzi non dovreste contare su cose del genere perché potrebbero cambiare in futuro e infrangere il vostro codice. Utilizzare la parola chiave instanceof come descritto :) –