我正在阅读Patrick Mulder的使用Backbone.js的完整堆栈Web开发,他介绍了browserify的使用。
他解释说我们必须编写一个js文件/app/main.js,然后将它浏览到static / bundle.js,我没有捆绑它的问题。但是我在书中的例子后发现了一些问题,我调试的第一件事就是比较我的the author working bundle.js。好吧,即使捆绑的main.js和其他js相同,bundle.js也不相等。所以我想这是我问题的起点。
我的节点版本是:v0.10.33,我的browserify版本是:8.0.1
正如书中所说,这是我用来从main.js生成bundle.js的命令:
browserify -r ./app/main.js:app > static/bundle.js
开始一些差异:
(function e(t,n,r)....
require=(function e(t,n,r)....
main.js source code link 。它和我一样精确。
main.js的代码是:
var Backbone = require('backbone');
var $ = require('jquery-untouched');
Backbone.$ = $;
var MoviesRouter = require('routers/movies');
$(document).ready(function() {
console.log('init');
var router = new MoviesRouter({el: $('#movies') });
Backbone.history.start({
pushState: true,
root: '/'
});
});
正如本书所说,那段代码与我正在使用的完全相同 这是jsfiddle我粘贴了我的bundle.js
中的代码答案 0 :(得分:1)
您遇到的实际问题是什么?不要担心捆绑包中的内容的细节,除非它没有按照应有的方式执行。 #1和#2如何影响您对捆绑的使用?
#3和#4通过使用-r
(--require
)标志来解释。如果您这样做,您的捆绑包将不会以require=...
开头:
browserify ./app/main.js -o static/bundle.js
您是否尝试在外部公开./app/main.js
?