私のアプリは正常に動作していますが、今日は r.js に渦を巻かせることにしました。
今、私のツリー(その一部)は次のようになります
- index.html
- 資産
- js
- require.js
- r.js
- main.js
- コンポーネント
- アンダースコア.js
- jquery.js
- backbone.js
- jqueryuijs
- モデル
- 選挙.js
- コレクション
- 選挙.js
- ビュー
- app.js
- 選挙.js
- js
私が持っているindex.htmlファイルに
<script data-main="assets/js/main" src="assets/js/require.js"></script>
これはmain.jsです
require.config({
paths: {
jquery: 'http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min',
underscore: 'components/underscore/underscore-min',
backbone: 'components/backbone/backbone-min',
jqueryui: 'components/jqueryui/jquery-ui-1.10.1.custom.min'
},
shim: {
'backbone': {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
},
'jqueryui': ['jquery']
}
});
require(['views/app'], function(App) {
var router = Backbone.Router.extend({
routes: {
'': 'root',
'year(/:year)': 'year'
},
root: function() {
new App();
},
year: function(year) {
new App({
year: year
});
}
});
r = new router();
Backbone.history.start({
// pushState: true
});
});
私のモジュールでは、assets/js/views/election.js
またはのようなファイルを参照しますassets/js/models/election.js
しかし、このbuild.jsでr.jsを実行すると
({
// baseUrl: "assets/",
paths: {
jquery: 'http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min',
underscore: 'components/underscore/underscore-min',
backbone: "components/backbone/backbone-min",
jqueryui: 'components/jqueryui/jquery-ui-1.10.1.custom.min'
},
name: "main",
out: "main-built.js"
})
私は得るError: ENOENT, no such file or directory '/Users/alex/Dropbox/www/animated-elections/assets/js/assets/js/collections/elections.js'
。パスに別のパスを追加する理由がわかりませんassets/js
。