2013-10-08 122 views
0

我目前正在通過David Sulc出色的「Backbone.Marionette.js:一個溫柔的介紹」的方式工作,並在模塊中脫鉤。隨着應用程序,因爲它目前爲我想了一個名爲在index.html腳本「contacts.js」模塊中訪問的API,但我得到以下錯誤,當我嘗試運行應用程序:從app.js無法訪問Marionette模塊

"Handler not found for 'contact: entities' " 

我可以直接從Chrome中的控制檯訪問API,並手動獲取'聯繫'信息,所以我認爲這是一個加載序列問題,其中app.js加載時API可能不可用,但加載順序如下:

<script type="text/javascript" src="assets/js/vendor/jquery-2.0.3.min.js"></script> 
<script type="text/javascript" src="assets/js/vendor/json2.js"></script>  
<script type="text/javascript" src="assets/js/vendor/underscore-min.js"></script> 
<script type="text/javascript" src="assets/js/vendor/backbone-min.js"></script> 
<script type="text/javascript" src="assets/js/vendor/backbone.marionette.min.js"></script> 

則本地腳本如下:

<script type="text/javascript" src="assets/js/app.js"></script> 
<script type="text/javascript" src="assets/js/entities/contact.js"></script> 

和下面的最後兩個腳本標籤的腳本標籤直接運行下面的代碼:

<script type="text/javascript"> 
... some view code 
ContactManager.on("initialize:after", function(){ 
    var contacts = ContactManager.request("contact: entities"); 
... some more code 
</script> 

行開始接觸VAR = .....是一個給我的錯誤。任何幫助讚賞

我盡我所能,我已經完全按照本書的腳本。

+3

難道之間的空間:與「實體」「聯繫」? –

+0

你完全正確net.uk.sweet。就是這樣。疲憊的眼睛......所以習慣於輸入JS名稱值對,我在自動駕駛上做了它,然後甚至無法將其視爲錯誤!無法將評論標記爲正確的答案,但無論如何,謝謝! – user2703990

+0

添加了答案,以便將其標記爲正確。 –

回答

0

你在你的事件名稱空間:

<script type="text/javascript"> 
... some view code 
ContactManager.on("initialize:after", function(){ 
    // Remove the space in contact: entities --> 
    var contacts = ContactManager.request("contact: entities"); 
... some more code 
</script>