Magento 2 JavaScript – Load JS in Adminhtml Area Using Require-js

adminhtmljavascriptmagento2

I'm trying to load a js file in adminhtml area.

I've created my module and requirejs-config.js file under app/code/vendorName/moduleName/view/adminhtml/web folder:

var config = {

        map: {
            "*": {
                stickerConfig: 'vendorName_moduleName/js/stickerConfig'
            }
        }
    };

I see this piece of code in pub/static/_requirejs/adminhtml/Magento/backend/en_US/requirejs-config.js file.

Then I created my stickerConfig.js in app/code/Mainf/Stickers/view/adminhtml/web/js

When I load backend pages, I don't find my javascript in list of js downloaded by browser.

What's wrong?

Best Answer

I solved in this way..

app/code/vendorName/moduleName/view/adminhtml/layout/adminhtml_system_config_edit.xml:

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="admin-2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceContainer name="footer">
            <block class="vendorName\moduleName\Block\Config" template="vendorName_moduleName::js.phtml"/>
        </referenceContainer>
    </body>
</page>

app/code/vendorName/moduleName/view/adminhtml/templates/js.phtml:

<script type="text/javascript">
    require(
        ['jquery'],
        function($) {
            $(function() {
                // My js code
            });
        });
</script>
Related Topic