我在Require.js模块(AMD)中定义了一个函数和一个jQuery函数,我想导出它们。导出函数很简单,但如何导出jQuery函数?谢谢!
// filename: someModule.js
define(function (require, exports) {
function funcA () {}
$.fn.someFunc = function( callback ) {
return this.someFunc1(xxx, callback );
};
$.fn.extend({
someFunc2: function () {}
});
exports.funcA = funcA;
// how to export $.fn.someFunc, so I can use it in another module?
// and how to export someFunc2?
});
我正在以这种方式使用此文件:
// another file: main.js
define(function (require, exports) {
// this module is loaded by require.js
var someModule = require('path/to/someModule');
function init() {}
exports.init = init;
});
并且该文件由服务器的.ejs文件呈现
<script type="text/javascript">
require.config({
baseUrl: '/asset',
packages: [
...
]
});
require(['path/to/main.js'], function (main) {
main.init();
});
</script>
答案 0 :(得分:0)
你拥有的是一个jQuery插件。要使其他代码可以使用jQuery插件,需要设置$.fn.someFunc
all 。需要使用它的代码只需将其列为依赖项。类似的东西:
define(["jquery", "someFuncModule"], function ($) {
$("some selector").someFunc(...);
});
无需再从AMD模块中导出它。