Javascript 重写/_core/js/product.js中的函数
我需要在Javascript 重写/_core/js/product.js中的函数,javascript,webpack,prestashop,prestashop-1.7,Javascript,Webpack,Prestashop,Prestashop 1.7,我需要在/\u core/js下的product.js中自定义函数的行为。函数声明是: function replaceAddToCartSections(data) {} 我尝试在custom.js中创建一个同名函数。由于这是HTML中加载的最后一个js文件,我原以为原始函数会被覆盖,但结果并非如此 当我在Mozilla开发工具中打印replaceAddToCartSections.toString()时,我得到了我的新函数。但是,当我从custom.js中删除该函数时,我得到: Refer
/\u core/js
下的product.js
中自定义函数的行为。函数声明是:
function replaceAddToCartSections(data) {}
我尝试在custom.js
中创建一个同名函数。由于这是HTML中加载的最后一个js文件,我原以为原始函数会被覆盖,但结果并非如此
当我在Mozilla开发工具中打印replaceAddToCartSections.toString()
时,我得到了我的新函数。但是,当我从custom.js
中删除该函数时,我得到:
ReferenceError:未定义replaceAddToCartSections
core.js
的函数是私有的吗?如何覆盖它们?是否与网页包配置有关 调用replaceAddToCartSections
后,会发出updatedProduct
,因此您可以定义如下函数:
prestashop.on('updatedProduct', function (event) {
// your code
})
您正在运行哪个PS版本?@joseantgv,这是相对于从1.7.4.2开始的Prestashop的,至少在我看来,这不是最重要的,但在我的情况下有效。谢谢。@AdibAroui您是对的,您没有凌驾于此,但这是正确的方法。如果在下一个PS版本中修改了
replaceAddToCartSections()
函数而不修改您的函数,这种方法也会起作用。@AdibAroui它就像JS中的一个钩子