嗯,
我收到 JS 错误“Cookies 未定义”,但“js.cookie.min.js”在“woocommerce.min.js”之前加载。
我检查apache日志看看是否有任何错误,但没有。 我没有缓存插件。
我不知道如何跟踪此错误以找到根本原因,一切似乎都正常。
waitForImages 是另一个已加载的 JS,但我收到错误。
我错过了什么吗?找到错误的提示?
编辑*********
进一步调查
这是来自 js-cookie 的代码,由于某种原因我不明白 js-cookie 将“registeredInModuleLoader”设置为 true,但变量“Cookies”尚未定义。
;(function (factory) {
var registeredInModuleLoader = false;
if (typeof define === 'function' && define.amd) {
define(factory);
registeredInModuleLoader = true;
}
if (typeof exports === 'object') {
module.exports = factory();
registeredInModuleLoader = true;
}
if (!registeredInModuleLoader) {
var OldCookies = window.Cookies;
var api = window.Cookies = factory();
api.noConflict = function () {
window.Cookies = OldCookies;
return api;
};
}
} /* ... */
编辑2
我想我找到了问题,但还不知道原因。
周一,我从 MailChimp 提交了一个需要此代码的注册表单。 我认为问题出在“embed.js”,因为在条件“define.amd”(上面)指向“embed.js”。删除此脚本后,错误就消失了。
有什么想法吗?
<script type="text/javascript" src="//s3.amazonaws.com/downloads.mailchimp.com/js/signup-forms/popup/embed.js" data-dojo-config="usePlainJson: true, isDebug: false"></script>
<script type="text/javascript">require(["mojo/signup-forms/Loader"], function(L) { L.start({"baseUrl":"mc.us14.list-manage.com","uuid":"xxxxxxxxxxxxxxxxxxxxxxxxx","lid":"xxxxxxxxxx"}) })</script>
已解决
我将 Mailchimp 脚本的位置更改为之前的最后一项,没有更多问题。
谢谢。
最佳答案
我将 Mailchimp 脚本的位置更改为 </body>
之前的最后一项,没有更多问题。
也许 mailchiump 脚本尝试加载尚未加载的内容..
关于wordpress - Woocommerce - Cookie 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45956946/