Ich habe den Text "In den Warenkorb" in "Ich möchte dies" durch Überschreiben "geändert vendor\magento\module-catalog\view\frontend\templates\product\list.phtml
.
Wenn ich jedoch auf die Schaltfläche "Ich möchte dies" (dh "In den Warenkorb") klicke, wird das Produkt in den Warenkorb gelegt und der Text "In den Warenkorb" wird erneut auf der Schaltfläche angezeigt.
Ich denke, das Produkt wird über einen Ajax-Aufruf hinzugefügt. Aus diesem Grund wird nach dem Ajax-Aufruf kein neu hinzugefügter Text und der Text "In den Warenkorb" angezeigt.
Ich habe das versucht:
Ich habe eine benutzerdefinierte Erweiterung Ved_Mymodule erstellt .
Ich habe überprüft, dass die Erweiterung aktiv ist.
Danach folgte ich diesen Schritten:
app / code / Ved / Mymodule / view / frontend / requirejs-config.js:
var config = {
map: {
'*': {
catalogAddToCart:'Ved_Mymodule/js/customCatalogAddToCart'
}
}
};
app / code / Ved / Mymodule / view / frontend / web / js / customCatalogAddToCart.js:
define([
'jquery',
'mage/translate',
'jquery/ui'
], function($, $t) {
"use strict";
$.widget('Ved_Mymodule.customCatalogAddToCart',$.mage.catalogAddToCart, {
//Override function
disableAddToCartButton: function(form) {
var addToCartButtonTextWhileAdding = this.options.addToCartButtonTextWhileAdding || $t('Adding...');
var addToCartButton = $(form).find(this.options.addToCartButtonSelector);
addToCartButton.addClass(this.options.addToCartButtonDisabledClass);
addToCartButton.find('span').text(addToCartButtonTextWhileAdding);
addToCartButton.attr('title', addToCartButtonTextWhileAdding);
console.log('Hello 1');
},
enableAddToCartButton: function(form) {
var addToCartButtonTextAdded = this.options.addToCartButtonTextAdded || $t('Added');
var self = this,
addToCartButton = $(form).find(this.options.addToCartButtonSelector);
addToCartButton.find('span').text(addToCartButtonTextAdded);
addToCartButton.attr('title', addToCartButtonTextAdded);
setTimeout(function() {
var addToCartButtonTextDefault = 'heya..'; //self.options.addToCartButtonTextDefault || $t('Add to Cart..');
addToCartButton.removeClass(self.options.addToCartButtonDisabledClass);
addToCartButton.find('span').text(addToCartButtonTextDefault);
addToCartButton.attr('title', addToCartButtonTextDefault);
}, 1000);
console.log('Hello 2');
}
});
return $.Ved_Mymodule.customCatalogAddToCart;
});
Ich versuche, Dummy-Nachrichten in der Konsole zu drucken.
Danach: Ich habe die Bereitstellung von statischem Inhalt ausgeführt. Indizieren Sie die Daten neu. Cache gereinigt und gespült.
Änderungen werden jedoch nicht angezeigt.
requirejs-config.js
den Ort um und korrigieren Sie ihnapp/code/Ved/Mymodule/view/frontend/requirejs-config.js
.