Search code examples
jqueryjquery-pluginsrequirejsamdumd

How to use requirejs to load jQuery plugin intlTelInput?


The plugin in question is https://github.com/Bluefieldscom/intl-tel-input. All script tags are inserted by requirejs properly, but I still can't use the plugin intlTelInput.

What am I missing?

require.config({
    baseUrl: "/Scripts/require",
    paths: {
        "jquery": "/Scripts/jquery-2.1.3.min",
        // jquery plugins
        "intlTelInput": "/Scripts/jquery/plugin/intlTelInput-5.3.0.min"
    }
});

define(["jquery", "intlTelInput"], function ($, tel) {
    console.log(tel); // output: undefined
});

Solution

  • Apparently, a jQuery plugin must be accessed via jQuery.

    require.config({
        baseUrl: "/Scripts/require",
        paths: {
            "jquery": "/Scripts/jquery-2.1.3.min",
            // jquery plugins
            "intlTelInput": "/Scripts/jquery/plugin/intlTelInput-5.3.0.min"
        }
    });
    
    define(["jquery", "intlTelInput"], function ($, tel) {
        console.log($().tel); // now it works
    });