jquery - jQuery插件抛出'不是函数'
问题描述
我有一个 auto-logout.js 文件,我在某些页面上使用:
<script src="/js/auto-logout.js"></script>
在控制台中,它会引发以下错误:
未捕获的类型错误:$(...).idleTimeout 不是函数
我不明白为什么这不起作用。当前运行 jQuery 2.2.4。
(function($) {
$.fn.idleTimeout = function(userRuntimeConfig) {
// ...
});
}(jQuery));
$(document).ready(function() {
$(document).idleTimeout({
idleTimeLimit: 1200,
customCallback: function() {
axios.get('/auth/signout').then(function() {
document.location.reload();
}).catch(function(error) {
console.error(error)
});
},
dialogDisplayLimit: 30,
});
});
有任何想法吗?
解决方案
显然包“materialize-css”破坏了我的其他脚本。我将“materialize-css”更新为最新的 1.0.0(从 0.98 开始),问题得到解决。
仍然不知道是什么导致了最初的问题,因为这个/这些脚本多年来一直运行良好。可能是因为某处更新了 npm 包而导致的问题。