我正在尝试制作一个使用 jQuery 和 Handlebars 的模块
这是主文件:
require(['app', 'jquery', 'handlebars' ], function (app, $, handlebars) {
console.log('Running jQuery %s', $().jquery);
});
这是应用程序文件:
define(['jquery', 'handlebars'], function ($, hb) {
$(function() {
var source = $("#some-template").html();
var template = hb.compile(source);
var data = {...});
});
为什么它说hb未定义
,但是当我删除所有依赖项时,它在使用Handlebars
而不是hb
(这是正常方式)?
最佳答案
Handlebars 不符合 AMD/RequireJS 标准。您需要对其进行填充
:http://requirejs.org/docs/api.html#config-shim
shim: {
handlebars: {
exports: 'Handlebars'
},
}
关于javascript - 使用 require.js 依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19618586/