gpt4 book ai didi

javascript - 如何在模块定义中使用 RequireJS 来请求 jQuery Cookie?

转载 作者:行者123 更新时间:2023-11-28 08:40:45 26 4
gpt4 key购买 nike

我有以下模块,它依赖于 jQuery Cookie。如何将 $.cookie 或 jQuery.cookie 传递到匿名函数中?现在,因为我没有传递任何内容,所以它在控制台中失败并显示以下错误消息:

未捕获类型错误:无法调用未定义的方法“cookie”

我的代码如下所示:

define(['//cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js', '//cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.3.1/jquery.cookie.min.js'], function($) {

return function themeSwitcher(initTheme) {
var body = document.body,
main = document.querySelector('main'),
activeTheme = body.classList,
theme = document.querySelectorAll('.theme-switcher li');

if ($.cookie('userTheme')) {
$(body).removeClass(activeTheme[0])
$(body).addClass($.cookie('userTheme'));
} else {
$(body).addClass(initTheme);
}

for (var i = 0; i < theme.length; i++) {
theme[i].addEventListener('click', function(e) {
var userTheme = e.target.className;

if (!$.cookie('userTheme')) {
$.cookie('userTheme', userTheme, { expires: 7, path: '/' });
$(body).removeClass(activeTheme[0]);
$(body).addClass($.cookie('userTheme'));
} else {
$.removeCookie('userTheme');
$.cookie('userTheme', userTheme, { expires: 7, path: '/' });
$(body).removeClass(activeTheme[0]);
$(body).addClass($.cookie('userTheme'));
}

}, false);

}

}

});

最佳答案

jQuery cookie 从 1.4.0+ 版本开始支持 AMD。
您使用的1.3.1版本不支持它。

关于javascript - 如何在模块定义中使用 RequireJS 来请求 jQuery Cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20499054/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com