【发布时间】:2017-01-31 17:47:19
【问题描述】:
我有一个 npm 模块 (https://www.npmjs.com/package/squarebook),它使用带有 babel loader 的 webpack 从 src/index.js 生成 dist/bundle.js 然后我在 package.json 中指定主文件是 index.js。 js(主目录),该主文件有以下代码:
module.exports = require('./dist/bundle');
现在我已经通过 npm (npm install squarebook) 在我使用 gulp browserify 和 babel 的其他项目中安装了该模块:
import browserify from 'gulp-browserify';
import babelify from 'babelify';
gulp.task('build_js', function() {
return gulp.src('src/js/main.js')
.pipe(browserify({debug:true}))
.pipe(gulp.dest('dist/js/'));
});
这个其他项目在 src/js/main.js 中的内容是:
import guestbook from 'squarebook';
我希望能够使用留言簿作为我从 squarebook 包中导出的函数,但它只是一个带有 proto 的空对象。
我错过了什么或做错了什么?
【问题讨论】:
-
有关更多详细信息,这是我尝试导入 squarebook 包 github.com/ferflores/ferflores.net 的项目,该文件是 src/js/main.js ,目前正在工作,因为在 squarebook 包中我必须做 window .squarebook = squarebook (github.com/ferflores/squarebook/blob/master/src/index.js#L68) 但我不想让它成为与 ES5/ES6 兼容的可导入模块。
标签: npm gulp webpack ecmascript-6 babeljs