Domanda

Estendo customer address per questi Devo Modifica / Estensione vendor/Magento/module-ui Core file.

I.e

root/vendor/magento/module-ui/view/base/web/js/form/components/collection.js

e

root/vendor/magento/module-ui/view/base/web/templates/form/components/collection.html
.

Quando ho modificato i file core, funziona bene, ma questa non è buona procedura / idea da estendere.

Così ho creato il nome del fornitore come Magento in root/app/code/ e ho effettuato modificato sopra i file nella stessa cartella in locale.

I.e

root/app/code/magento/module-ui/view/base/web/js/form/components/collection.js

e

root/app/code/magento/module-ui/view/base/web/templates/form/components/collection.html
.

Dopo aver posizionato tali file ho cancellato la cache.Ma ancora non mostra i miei cambiamenti.

Ho anche eseguito il comando php bin/magento setup:static-content:deploy ma senza fortuna.

Potresti per favore suggerirmi come fare questo?

È stato utile?

Soluzione 2

finalmente raggiunto il mio sé.

Crea file requirejs-config.js da Learning / HelloWorld / View / Base e Incolla sotto il codice

var config = {
    map: {
        '*': {
            'Magento_Ui/js/form/components/collection':'Learning_HelloWorld/js/form/components/collection'
        }
    }
};
.

Creare il file collection.js da Learning / Hilloworld / View / Base / Web / JS / Form / Componenti e copia il codice core in pasta e modyfie.

   /**
     * Copyright © 2015 Magento. All rights reserved.
     * See COPYING.txt for license details.
     */
    define([
        'underscore',
        'mageUtils',
        'uiRegistry',
        'uiComponent',
        'uiLayout',
        'Magento_Ui/js/modal/confirm'
    ], function (_, utils, registry, Component, layout, confirm) {
        'use strict';

        var childTemplate = {
            parent: '${ $.$data.name }',
            name: '${ $.$data.childIndex }',
            dataScope: '${ $.name }',
            nodeTemplate: '${ $.$data.name }.${ $.$data.itemTemplate }'
        };

        return Component.extend({
            defaults: {
                lastIndex: 0,
                template: 'Learning_HelloWorld/form/components/collection'
            },

/* my custom methods */
            sendAddress: function (elem) {
                var self = this;
                self._sendAddress(elem);
            },

/* my custom methods */
            _sendAddress: function (elem) {


                this.bubble('update');
            }

        });
    });
.

Creare il file collection.html da Learning / Hilloworld / View / Base / Web / Template / Modulo / Componenti Path and Paste Core Core e Modifica IT

   <div class="ui-tabs">
<!-- My Extra html code -->
     <button type="button" data-bind="click: $parent.sendAddress.bind($parent, element)">
         Send this Address
     </button>
    </div>
.

Ora esegui i comandi sotto.

    .
  1. Impostazioni: Aggiornamento
  2. Configurazione: Contenuto statico: Distribuisci
  3. Ora funzionerà.

    Sentiti libero di chiedere se qualche domanda.

Altri suggerimenti

Un modulo è registrato sotto un percorso, ecco perché può leggere dal venditore, ma non può da app / codice.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top