2014-01-22 33 views
0

我正在使用requireJS。我有兩個文件,與主要的應用程序configuraction,功能:與requireJS和jQuery的點擊事件

應用程序/ main.js

define(["jquery", "jquery_migrate"], function() { 
    return { 
     bar: function() { 
      console.log('test'); 
     } 
    } 
}); 

,並與一些事件火了這樣的功能:

應用程序/ events.js

require(['main_app'], function(foo) { 
    $('body').on('click', function(e) { 
     foo.bar(); 
     e.preventDefault(); 
    }); 
}); 

,這是路由文件:

app.js

requirejs.config({ 
    "baseUrl": "js/libs", 
    "paths": { 
     "main_app":   "../app/main", 
     // global 
     "app":    "../app", 
     "jquery":   "jquery/jquery", 
     "jquery_migrate": "jquery/jquery_migrate" 
    } 
}); 
requirejs([ "app/main", "app/events" ]); 

我仍然有Uncaught Error: Script error for: main_app並沒有從點擊事件效應初探。任何人都可以幫忙嗎?很多thx。

回答

2

擺脫了main_app關鍵

requirejs.config({ 
    "baseUrl": "js/libs", 
    "paths": { 
     //"main_app":   "../app/main", // I believe this is causing a conflict 
     // global 
     "app":    "../app", 
     "jquery":   "jquery/jquery", 
     "jquery_migrate": "jquery/jquery_migrate" 
    } 
}); 

應用程序/ events.js

require(['app/main'], function(foo) { 
    $('body').on('click', function(e) { 
     foo.bar(); 
     e.preventDefault(); 
    }); 
}); 
+0

真棒,完美的作品,很多thx的幫助 – Lukas

+0

不客氣。 – dcodesmith

0

由於此錯誤Uncaught Error: Script error for: main_app,您的腳本將不會執行。

可能是您的require.config未加載或未指向正確的路徑。在「網絡」選項卡中驗證實際加載的文件,然後進行修復。

如果路徑是正確的,那麼你的代碼中就有一個JS語法錯誤。

+0

所有腳本加載corectly,我也看不出有任何語法錯誤:( – Lukas