我正在尝试创建一个使用jQuery和Handlebars的模块
这是主文件:
require(['app', 'jquery', 'handlebars' ], function (app, $, handlebars) {
console.log('Running jQuery %s', $().jquery);
});
这是app文件:
define(['jquery', 'handlebars'], function ($, hb) {
$(function() {
var source = $("#some-template").html();
var template = hb.compile(source);
var data = {...});
});
为什么会说hb is not defined
但是当我删除所有依赖项时,它会在使用Handlebars
而不是hb
时正常工作(这是正常的方法)?
答案 0 :(得分:2)
把手不符合AMD / RequireJS标准。您需要shim
:http://requirejs.org/docs/api.html#config-shim
shim: {
handlebars: {
exports: 'Handlebars'
},
}