gpt4 book ai didi

javascript - swatchRenderer.js 中的 Magento 2 错误

转载 作者:行者123 更新时间:2023-11-30 16:12:08 27 4
gpt4 key购买 nike

我已经覆盖 app\code\Mydirectory\CustomSwatches\view\frontend\web\js\SwatchRenderer.js 中的 magento SwatchRenderer.js 文件。

我的问题是我在加载产品页面时遇到错误:

Uncaught TypeError: Cannot read property 'updateData' of undefined

我发现 SwatchRenderer.js 上的 data('gallery') 的以下函数未定义。

updateBaseImage: function (images, context, isProductViewExist) {
var justAnImage = images[0];

if (isProductViewExist) {
context
.find('[data-gallery-role=gallery-placeholder]')
.data('gallery')
.updateData(images);
} else if (justAnImage && justAnImage.img) {
context.find('.product-image-photo').attr('src', justAnImage.img);
}
}

我查看了一个 Magento 2 演示站点。在该站点上,上述数据属性被设置为 JavaScript 对象。目标元素是具有上述属性的 div。但在我的网站上它是未定义的,显然我认为我的网站上没有设置数据属性。谁能帮我找到上述元素的 setter 函数/ View /文件?任何帮助,将不胜感激。谢谢。

最佳答案

您的 Magento 实例中使用了什么主题?您是否重命名了容器类名称?

在 SwatchRenderer.js 文件的第 202 行可以找到一段有趣的代码。在 _create 函数下,您将找到 gallery 变量的初始化,如 here 所示。

您会注意到它在 .column.main 元素下找到了带有数据集的元素。因此,由于缺少列主元素将返回空响应。

关于javascript - swatchRenderer.js 中的 Magento 2 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36083501/

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