質問の背景情報
そこで、昨年クライアント向けのアプリケーションを作成しました。プロジェクトの途中で、多くの非同期機能が必要になることに気づき、サイトの機能の多くをjavascriptに移行して書き始めました。私は開発環境でかなり大きな問題に遭遇し、時間を節約するためだけにphpファイル内に多くのjavascriptを含めることになりました。
プロジェクトをクライアントに渡す前に、私はすべてのJavaScriptを、サイトのさまざまな領域によってのみ分割された個別のファイルに移動しました。そのため、admin.js、checkout.js、common.jsなどになりました。
実際の問題
クライアントはサイトに機能を追加したいと考えています。先に進んで、JavaScriptを別のファイルに正しく構造化し、モデルコードをビューコードから分離したいと思います。
requirejsを使用したいので、すべてのページのフッターに大量のスクリプト呼び出しがなく、依存関係をより適切に処理します。
私が抱えている特定の問題は、ファイルが正しくロードされていないように見えることです。
私のmain.jsファイル
require.config({
paths: {
'course' : 'models/course',
'login_view': 'views/login/login_view',
'config' : 'config',
'views' : 'views/views',
'session' : 'models/session'
}
});
require(['login_view'], function(login_view){
login_view.init();
});
私のlogin_view.jsファイル
define(function() {
var login_view = {
init: function(){
console.log(this);
});
};
});
開発サーバーにアプリケーションをロードすると、このエラーが発生します。Uncaught TypeError: Cannot call method 'init' of undefined
どんな助けでもいただければ幸いです。