将 browserify 输出写入变量

Write browserify output to variable

我是 运行 一个实验,我想将 browserify 的输出写入一个变量,以便以后能够从内存中提供它。我正在写信给文件:

const b = browserify(path.join(__dirname, '../src/main.js'));
b.transform('babelify');

const dest = fs.createWriteStream(path.join(__dirname, '../bundles/default.js'));

b.bundle().pipe(dest);

但我想要的是将它分配给一个对象,有点像这样:

const scripts = {
  default: b.bundle()
};

我该怎么做?监听end事件然后赋值?

.bundle() accepts a callback:

b.bundle(function(err, buf) {
  if (err) throw err;
  scripts.default = buf.toString();
  ...
});

(当然是异步的)