我想在应用程序中使用依赖关系管理,并遇到了require.js和browserify。我无法决定选择哪一个。
如果有人能告诉我如何将定制的javascript模块(非节点模块)包含到我的js中,那将是一个决定性的因素。我看到browserify很容易包含节点模块。
答案 0 :(得分:3)
假设我们想将以下功能封装到模块中:
sayHelloInEnglish = function() {
return "Hello";
};
然后我们创建文件 greetings.js :
module.exports = {
sayHelloInEnglish: function() {
return "Hello";
}
};
然后我们想在另一个模块中使用问候模块,例如。在我们的 main.js 文件中:
var greetings = require("./greetings.js");
greetings.sayHelloInEnglish();
我们如何声明依赖关系。
除此之外,我们还需要一个构建过程,因此我们的JS代码可以在浏览器中运行。为此,我选择了gulp.js流式构建系统。然后您只需要创建一个这样的任务:
gulp.task('browserify', function () {
gulp.src('main.js')
.pipe(browserify())
.pipe(concat('main.js'))
.pipe(gulp.dest('dist/js'));
});
此任务将加载main.js的所有依赖项,在main.js主体之前包含它们,然后它将作为新文件保存到' dist / js'或您将选择的任何目标。
答案 1 :(得分:2)
您可以使用当前命令包含自定义的javascript模块(这会将您的模块保存到新变量中):
greatestModuleEver = require('./your_module.js');