Ich benutze Backbone.js, um eine Web-App zu erstellen, die alle Ansicht, Sammlung und Modell in eine js-Datei schreiben, es Erfolg!Backbone.js: Trennen Sie die Ansicht, Sammlung, Modell zu verschiedenen js-Datei, sie konnten sich nicht erkennen
jetzt will ich sie auf verschiedene js Dateien trennen, so wie:
<script type="text/javascript" src="js/layermanagemodel.js"></script>
<script type="text/javascript" src="js/layermanagecollection.js"></script>
<script type="text/javascript" src="js/layermanageview.js"></script>
<script type="text/javascript" src="js/boot.js"></script>
und Lastmodellcode in jquery Last:
$(function(){
//Model
var manageModel = Backbone.Model.extend({
default:{
'selectedId':'unknow'
},
selectLayer:function(uuid){
this.set({"selectedId": uuid});
},
delLayer:function(){
}
});
})
aber die Firebug sagen Sie mir Bug:
manageModel is not defined
[Break On This Error]
model: manageModel
in Sammlungsdatei
?, warum, wenn sie in anderer Datei zu trennen, sie konnten sie nicht erkennen, wie kann ich dieses Problem lösen oder was richtig laden, um danke
danke, ich habe eine Frage: Warum sollte ich einen Richter wie window.app = window.app || {} Warum nur definieren? – hh54188
@ hh54188: 'window.app = window.app || {} 'setzt' window.app' auf ein leeres Objekt, wenn keine 'window.app' vorhanden ist und' window.app' allein lässt, wenn es bereits gesetzt wurde; Dadurch werden die JavaScript-Dateien unabhängiger und unterliegen weniger der Ladereihenfolge. Sobald wir wissen, dass es da ist, können wir Dinge hineinlegen. Sie können nur 'app' verwenden, wenn' window.app' eine schöne Erinnerung ist, dass Sie wirklich wollen, dass es global ist. –