Js çekirdek işlevi üzerine eflatun 2


9

Magento_Swatches/js/SwatchRenderer.jsDosyadan bazı işlevlerin üzerine yazmaya çalışıyorum

Kodum requirejs-config.js:

var config = {
    config: {
        mixins: {
            'Magento_Swatches/js/SwatchRenderer': {
                'Magento_Swatches/js/SwatchRendererCategory1': true
            }
        }
    }
};

Ve dosya kodu SwatchRendererCategory1.js

define(function () {
'use strict';

var mixin = {
        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('.image-block').css("background-image", "url('"+justAnImage.img+"')");
            }
        }
};

return function (target) {
    return target.extend(mixin);
};});

targetBu durumda ne için kullanmalıyım ? Teşekkür ederim.


SwatchRenderer.js'nin üzerine yazmak istediğiniz js bu magento 2'de mevcut değil
Deexit Sanghani

Herhangi bir çözümün var mı?
Dhaduk Mitesh

Yanıtlar:


1

Adım 1: RequireJS yapılandırma dosyası oluşturun requirjs-config.js

var config = {
  "map": {
    "*": {
      "<default_component>": "<custom_component>"
    }
  }
};

Aşağıdaki gösterimin kullanıldığı yerler:: değiştirdiğiniz varsayılan bileşenin adı

: özel bileşenin adı

Örneğin, varsayılan menü widget'ları yerine özel navigation-menu.js komut dosyasını kullanmak istiyorsanız, requirjs-config.js dosyanız aşağıdakileri içermelidir:

var config = {
  "map": {
    "*": {
      "menu": "/js/navigation-menu",
      "mage/backend/menu": "js/navigation-menu",
    }
  }
};

Magento 2'deki Magento JS Çekirdeğini Geçersiz Kılma / JavaScript Kaynaklarını Yapılandırma / Magento 2'deki Magento JS Çekirdeği Nasıl Geçersiz Kılsın Magento 2 ila 2 adımda Magento JS Core:

Herkese merhaba. Bazen, Magento JS çekirdeğini değiştirmek istersiniz. Ancak Magento kaynak kodunda doğrudan değiştiremezsiniz. Bu yüzden Magento JS'yi geçersiz kılmalısınız. Bu blogda, Magento JS çekirdeğini nasıl geçersiz kılacağınızı ve özel Javascript'inizle nasıl değiştireceğinizi göstereceğim.

Adım 1: RequireJS yapılandırma dosyası oluşturun requirjs-config.js

var config = {
  "map": {
    "*": {
      "<default_component>": "<custom_component>"
    }
  }
};
var config = {
  "map": {
    "*": {
      "<default_component>": "<custom_component>"
    }
  }
};

Aşağıdaki gösterimin kullanıldığı yerler:: değiştirdiğiniz varsayılan bileşenin adı

: özel bileşenin adı

Örneğin, varsayılan menü widget'ları yerine özel navigation-menu.js komut dosyasını kullanmak istiyorsanız, requirjs-config.js dosyanız aşağıdakileri içermelidir:

var config = {
  "map": {
    "*": {
      "menu": "/js/navigation-menu",
      "mage/backend/menu": "js/navigation-menu",
    }
  }
};
var config = {
  "map": {
    "*": {
      "menu": "/js/navigation-menu",
      "mage/backend/menu": "js/navigation-menu",
    }
  }
};

Adım 2: requirjs-config.js dosyanızı aşağıdaki dizinlerden birine yerleştirin (özel komut dosyanızın konumuna bağlıdır):

Tema dosyalarınız: Modül görünüm dosyalarınız: / view / frontend Yukarıda bahsettiğim 2 adım Magento 2'deki Magento JS Core'u geçersiz kılmanız için en kısa işlemdir. Bu kılavuz ile Magento 2'deki Magento JS Core'u kolayca yönetebilirsiniz. Her mağazanın Magento 2'de birçok özelliği olan bir Magento JS Core vardır.


0

"Requirjs-config.js" kodunuz şu olmalıdır:

var config = {map: {'*': {"Magento_Swatches / js / SwatchRenderer": 'Magento_Swatches / js / SwatchRendererCategory1',}}};

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.