我正在使用Chris Imrie对ExpressionEngine的RequireJS迭代,使我的所有fieldtypes兼容.我不明白的一件事是如何调用RequireJS中定义的函数.
https://github.com/ckimrie/RequireJS-for-EE
这是我想要做的一个基本的例子......
var loadImage = function() {
console.log('loaded');
}
define(function () {
return loadImage;
});
Run Code Online (Sandbox Code Playgroud)
我如何实际访问loadImage函数?我的代码100%工作,但是当我开始使用RequireJS时,库的行为有所不同.下面是我正在使用的库的片段,它完全分叉为RequireJS.如果我删除了fork并使用标准的jQuery调用,它可以正常工作(即使使用RequireJS加载所有脚本).
不起作用:
if (typeof define === 'function' && define.amd) {
define(function () {
return loadImage;
});
} else {
$.loadImage = loadImage;
}
Run Code Online (Sandbox Code Playgroud)
工作
$.loadImage = loadImage;
Run Code Online (Sandbox Code Playgroud)
为什么jQuery库会像这样分叉代码?我担心我忽略了一些简单的事情,但考虑到所有这些代码都是ExpressionEngine Fieldtypes的上下文,我没有问题改变库.