我正在尝试从requireJS模块引用测试Jquery插件,但由于某种原因它似乎无法正常工作。
我是这样的: 这是我的自定义插件:
test.js
$.fn.testfunction = function(){
alert();
};
我从
引用它的地方effects.js
define(['jquery', 'step1', 'global', 'test'], function($, step1, global, test){
$('body').test();
});
最后我的main.js加载了effects.js
main.js
requirejs.config({
baseUrl: "/",
urlArgs: "" + Math.floor((Math.random() * 100) + 1),
paths:
{
jquery: '//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min',
topJs: '/holoweb/static/js/v3_landing_top',
bottom: '/holoweb/static/js/v3_landing_bottom',
global: '/v2/js/variables/global',
registeringUser: '/v2/js/registeringUser',
effects: '/v2/js/effects/effects',
step1: '/v2/js/variables/step1',
test: '/v2/js/effects/test',
}
});
require(['jquery']);
require(['bottom']);
require(['topJs']);
require(['effects']);
require(['registeringUser'], function(Registration){
var NewUser = Registration.CreateNewUser;
NewUser.startStep(1);
});
当我去查看它时,我从chrome开发人员工具中收到错误,显示: http://i.imgur.com/IdSZPgh.png
我不知道为什么。
请原谅任何不良行为,对于requirejs来说我是一个新手,谢谢。
答案 0 :(得分:0)
test.js将jquery作为依赖项。将其替换为:
define(['jquery'], function($){
$.fn.testfunction = function(){
alert();
};
}
您还可以定义testfunction
函数,但调用test
函数。
将$('body').test();
替换为$('body').testfunction();
您不需要使用多个require
函数。必须只有1个require函数才能成为应用程序的入口点。