[英]Prestashop 1.7.x override javascript from module with my own module
我正在編寫自己的模塊,需要覆蓋 ps_shoppingcart.js
我嘗試閱讀文檔:
└── modules
├── css
│ ├── external-lib.css
│ └── style.css
├── js
│ └── app.js
我知道這種覆蓋是針對主題的,但我希望它也適用於模塊,不幸的是我沒有找到關於模塊的任何信息。
另一個想法可能是覆蓋 Ps_Shoppingcart 類並調用我自己的 javascript。
你知道如何解決它或一些文檔鏈接、教程等嗎?
更新解決
這是我找到的解決方案,我不確定是否是最好的方法,但它確實有效。
我覆蓋了 ps_shoppingcart.php,然后我嘗試加載我自己的 javascript。 那可能是因為路徑錯誤沒有加載,所以我從我的模塊中包含了它,現在它可以工作了
ps_shoppingcart.php 覆蓋我不包含任何 javascript
if (!defined('_PS_VERSION_')) {
exit;
}
class Ps_ShoppingcartOverride extends Ps_Shoppingcart
{
public function hookHeader()
{
return;
}
}
如果有人知道更好的解決方案,我很高興聽到
謝謝加布里埃爾
您可以在模塊 hookHeader 中使用 'unregisterJavascript' FrontController 函數刪除一些 js 實例,然后注冊您自己的 js 以覆蓋其功能。
在您的情況下,這一行: $this->context->controller->unregisterJavascript('modules-shoppingcart');
現在,您可以注冊您的 $this->context->controller->registerJavascript('instance-name', 'js-resource-path);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.