Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中访问第三方加载的requireJS包_Javascript_Symfony_Callback_Requirejs_Intl Tel Input - Fatal编程技术网

在JavaScript中访问第三方加载的requireJS包

在JavaScript中访问第三方加载的requireJS包,javascript,symfony,callback,requirejs,intl-tel-input,Javascript,Symfony,Callback,Requirejs,Intl Tel Input,我正在尝试解决如何访问我的requireJS JavaScript中的库。我有下面的代码,我需要回调在requireJS模块之外,因为第三方代码正在访问它 如何访问回调函数中的intlTelInput代码 在我的小枝模板中: <script type="text/javascript"> require(['crmpicco/details'], function(details) { details.init(); }); var callb

我正在尝试解决如何访问我的requireJS JavaScript中的库。我有下面的代码,我需要回调在requireJS模块之外,因为第三方代码正在访问它

如何访问
回调
函数中的
intlTelInput
代码

在我的小枝模板中:

<script type="text/javascript">
    require(['crmpicco/details'], function(details) {
        details.init();
    });
    var callback = function (response) {            
        // I want to access intlTelInput in here    
    };
</script>

据我所知,你需要这样的片段, 请看一看


require.config({
路径:{
'国际电话输入':'https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/11.0.10/js/intlTelInput',
“jquery”:”https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min'
}
});
需要(['intl-tel-input'],函数(){
函数someCallback(){
$(“#某些输入”).intlTelInput();
}
setTimeout(someCallback,1000);
});

在他们的源代码中,他们支持UMD,所以我想你可以使用
require(['intl-tel-input'],function(IntlTelInput){}
内部回调。不需要填充。@Andrey你知道应该如何实现吗?如果
回调
require
内部,则第三方代码找不到回调函数。@Andrey类似地,如果
require
回调
内部,则
intlTelInput
无法实现被找到。
TypeError:intlTelInput不是一个函数
。谢谢你的评论。这里的
setTimeout
的目的是什么?你看到我上面的评论了吗?@crmpicco,setTimeout只是为了证明你可以在异步回调中初始化intlTelInput。不幸的是,这不能在
require
中完成“intl tel input”的一部分。有关我试图实现的目标,请参阅Google的隐形reCaptcha演示上的源代码。有关可行的解决方案,请参阅我在EWZReCaptcha项目上的PR和我的fork
require = {
    baseUrl: '/assets/js',
    paths: {
        'intl-tel-input': '/assets/vendor/intl-tel-input/build/js/intlTelInput.min',
    },
    shim: {
        'intl-tel-input': {
            deps: ['libphonenumber-utils']
        },
    }
};