The RequireJS configuration ignored by inline requires calls following the script tag that loads my application

I am using requireJS and I would like to access a specific module from it. Unfortunately, I always get 404 message that the module was not found.

I am including a js file where the path configuration is located as follows:

<script src="/js/shop2/springen/vendor/require.min.js" data-main="/js/shop2/springen/app" async></script>

My app.js looks like this:

define('jquery', [], function() {
    return jQuery;
});

requirejs.config({
    baseUrl: '/js/shop2/springen/',
    paths: {
        'lodash': 'vendor/lodash.min',  
        'Functions': 'app/modules/functions',
        'Search': 'app/modules/search',
        'Comparison': 'app/modules/comparison',
        'Globals': 'app/globals',
        'Init': 'app/init',
        ...
    }
});

// globals get loaded first and are available to all subordered scripts
require(['Globals', 'lodash'], function () {

    $(document).ready(function() {

        if ($('#comparison').length) {

            require(['Comparison'], function (Comparison) {
                Comparison.init();
            });

        } else {

            require(['Init']);

        }

    });

});

Now my problem is that I need to configure my search module, since I need to create translations on the server side and initialize it as follows:

<script type="text/javascript">
$(document).ready(function(){
    require(['Search'], function () {
        $('#q').shopIncrementalSearch({
            resultsDiv: $('#lifesearch'),
            defaultTitle: 'drücken Sie die Eingabetaste, um',
            defaultText: 'Alle Ergebnisse anzeigen',
            searchingText: 'Suche ...',
            dataUrl: 'http://SRV-CACHE01',
            language: 'de',
            countryId: 1,
            portalId: 22,
            isErpPortal: false,
            sectorId: null
        });
    });
});
</script>

, : . requireJS, DOM ? , ( - JS, ) . : /js/shop2/springen/Search.js 404 (Not Found) , ?

javascript: console.log(typeof require); function, require , .. ?

+4
1

, , , RequireJS , , .

:

  • :

    <script src="/js/shop2/springen/vendor/require.min.js" data-main="/js/shop2/springen/app" async></script>
    

    RequireJS RequireJS /js/shop2/springen/app.

    async , RequireJS . RequireJS , , , <script> , RequireJS. . . , data-main - , , .

  • :

    <script type="text/javascript">
      $(document).ready(function(){
        require(['Search'], function () {
          ...
        });
      });
    </script>
    

    , , (. ) . RequireJS , , , , , script. typeof require , , , .

    $(document).ready , , $(document).ready, , RequireJS .

require(['Search']... , requirejs.config /js/shop2/springen/app, <script> , RequireJS, :

require = {
    baseUrl: '/js/shop2/springen/',
    paths: {
        'lodash': 'vendor/lodash.min',  
        ...
    }
});

require RequireJS RequireJS .

async <script>, RequireJS.

+8

Source: https://habr.com/ru/post/1523919/


All Articles