当我使用 Browserify 3.30.2 (browserify file.js -o bundle.js
) 编译 markdown-symbols 时,我会得到类似以下的结果:
!function(e){if("object"==typeof exports...[function(_dereq_,module,exports){
},{}],2:[function(_dereq_,module,exports){
...
...
[on line 8000]
: function (str, start, len) {
if (start < 0) start = str.length + start;
return str.substr(start, len);
}
;
}).call(this,_dereq_("C:\\Users\\Me\\AppData\\Roaming\\npm\\node_modules\\browserify\\node_modules\\insert-module-globals\\node_modules\\process\\browser.js"))
},{"C:\\Users\\Me\\AppData\\Roaming\\npm\\node_modules\\browserify\\node_modules\\insert-module-globals\\node_modules\\process\\browser.js":11}],14:[function(_dereq_,module,exports){
module.exports=_dereq_(3)
},{}],15:[function(_dereq_,module,exports){
module.exports=_dereq_(4)
},{"./support/isBuffer":14,"C:\\Users\\ME\\AppData\\Roaming\\npm\\node_modules\\browserify\\node_modules\\insert-module-globals\\node_modules\\process\\browser.js":11,"inherits":10}],16:[function(_dereq_,module,exports){
var frep = _dereq_('frep');
var file = _dereq_('fs-utils');
var delims = _dereq_('delims');
var _ = _dereq_('lodash');
...
你可以看到这里有我的文件的绝对路径。为什么?如何删除它们?
编辑:这是我的build.js
文件
var browserify = require('browserify-middleware')
fs = require('fs');
var b = browserify('./index.js', {
'opts.basedir': './'
});
b({
// Mocks up express req and res
headers: []
}, {
getHeader: function () {},
setHeader: function () {},
send: function (a) {
console.log('send', a);
},
end: function (a) {
//console.log('end', a.constructor.name);
// fs.write('bundle.js', a, undefined, undefined, function (err) {
console.log(a.toString());
//});
// a.pipe(fs.createWriteStream('bundle.js'));
},
});
运行node build > bundle.js
时,遇到了同样的问题。如果我将basedir的值替换为例如ihatebrowserify
,则会出现关于未解析某个内容的错误。