पहचान नहीं सकते थे। मैं वेब ऐप बनाने के लिए बैकबोन.जेएस का उपयोग करता हूं, सभी दृश्य, संग्रह और मॉडल एक जेएस फ़ाइल में लिखता है, यह सफलता! jQuery लोड मेंBackbone.js: विभिन्न जेएस फ़ाइल में दृश्य, संग्रह, मॉडल को अलग करें, वे एक-दूसरे को
<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>
और लोड मॉडल कोड:
अब मैं, विभिन्न js फ़ाइलों के लिए उन्हें अलग तरह ही चाहते
$(function(){
//Model
var manageModel = Backbone.Model.extend({
default:{
'selectedId':'unknow'
},
selectLayer:function(uuid){
this.set({"selectedId": uuid});
},
delLayer:function(){
}
});
})
लेकिन फ़ायरबग मुझे बग बता:
manageModel is not defined
[Break On This Error]
model: manageModel
संग्रह फ़ाइल में
?क्यों करता है, तो उन्हें अलग अलग फाइल करने के लिए अलग है, वे एक दूसरे को पहचान नहीं कर सकता है कि कैसे मैं इस समस्या को हल कर सकते हैं या क्या सही लोड आदेश है आप
धन्यवाद, मेरे पास एक सवाल है: मुझे window.app = window.app जैसे न्यायाधीश क्यों करना चाहिए || {}? इसे क्यों परिभाषित करें? – hh54188
@ hh54188: 'window.app = window.app || {} '' window.app' को खाली ऑब्जेक्ट पर सेट नहीं करेगा यदि कोई 'window.app' नहीं है और अगर वह पहले से सेट हो चुका है तो अकेले' window.app' छोड़ देगा; ऐसा करने से जावास्क्रिप्ट फाइलें अधिक आत्मनिर्भर और लोडिंग ऑर्डर के अधीन कम होती हैं। फिर, एक बार जब हम जानते हैं कि वहां है तो हम इसमें चीजें डाल सकते हैं। यदि आप 'window.app' एक अच्छा अनुस्मारक है कि आप वास्तव में वैश्विक होना चाहते हैं तो आप केवल 'ऐप' का उपयोग कर सकते हैं। –