gpt4 book ai didi

javascript - 页面刷新后RequireJS未捕获ReferenceError : $ is not defined

转载 作者:行者123 更新时间:2023-12-02 18:59:35 25 4
gpt4 key购买 nike

我最近开始使用 require js,但我遇到了一个问题。

一切都加载得很完美,但有时当我刷新页面时,我会收到以下错误

Uncaught ReferenceError: $ is not defined 

如果我再次刷新它就消失了,如果我再次刷新它就在那里。

这是我的结构

requirejs.config({
baseUrl: siteUrl + "assets/js",

paths: {
"jquery": "./libs/jquery",
"jquery-ui": "libs/jquery-ui",
"bootstrap": "libs/bootstrap",
"scripts": "scripts",
"plugins": "plugins",
},

shim: {

'jquery-ui': {
deps: [ 'jquery' ],
exports: 'jquery-ui'
},
'bootstrap': {
deps: [ 'jquery' ],
exports: 'bootstrap'
},

'plugins/controls': {
deps: [ 'jquery', 'plugins/dialog2'],
exports: 'plugins/controls'
},

'plugins/form': {
deps: [ 'jquery'],
exports: 'plugins/form'
},

'plugins/dialog2': {
deps: [ 'jquery' ],
exports: 'plugins/dialog2'
},

'plugins/chosen': {
deps: [ 'jquery' ],
exports: 'plugins/chosen'
},

waitSeconds: 25,
}
});

/*
loading libs for every page
*/
requirejs(['jquery', 'jquery-ui', 'bootstrap', 'plugins/chosen'],
function($, chosen){
/*
loading global selectors and variables
*/
$(function () {
$('.chzn-select').chosen();
});

});

所以我是一个非常大的初学者,请问有人可以给我提示,或者解释一下为什么我会收到这个错误吗?为什么页面刷新时会发生这种情况?

最佳答案

这肯定已经是一个问题了:

requirejs(['jquery', 'jquery-ui', 'bootstrap', 'plugins/chosen'],
function($, chosen){
...

您想要加载插件chosen,但实际上它是jquery-ui。由于您不使用它,因此删除该参数(但不从数组中删除)。

我怀疑您的插件plugins/chosen(除其他外)具有错误的shim导出值。

这些插件是你写的吗?如果是这样,只需将它们的代码包装在 define block 中,您就不再需要对它们进行填充:

define(['jquery'], function ($) {...});

更多 here .

关于javascript - 页面刷新后RequireJS未捕获ReferenceError : $ is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14931541/

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