4

I would like to exchange data and / or call methods of another UI component. How can I access another UI component in Magento 2 knockout JS ?

2 Answers 2

15

List all components

var registry = require('uiRegistry');
registry.filter(function(value, key) {
    console.log(key);
    // console.log(value); 
});

Get a specific one

registry.get(
    'checkout.steps.billing-step.payment.payments-list.paypal_express.checkout.steps.billing-step.payment.payments-list.paypal_express.messages'
);

This is meant for debugging and might not be the best way to communicate between components.

From: http://devdocs.magento.com/guides/v2.1/ui_comp_guide/concepts/ui_comp_uiregistry.html

3

This is how you get all the components:

require('uiRegistry').get(function(c){ console.log(c.name); });

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.