Я включил intl-tel-input
js & css library в мой index.html
:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/14.0.6/css/intlTelInput.css" />
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/14.0.6/js/intlTelInput.min.js"></script>
У меня есть еще один файл с именем app.js
, внутри которого я форматирую число, пока пользователь печатает textbox
:
window.intlTelInputGlobals.loadUtils(_TEL_INPUT_UTILS).then(function(x, y){
var pn = $("#phone_number")[0];
var iti = intlTelInput(pn,{
nationalMode: false,
initialCountry: 'US'
})
var handleChangeVerification = function() {
if(iti.getNumber() ){
iti.setNumber(iti.getNumber());
}};
pn.addEventListener('change', handleChangeVerification);
pn.addEventListener('keyup', handleChangeVerification);
Переменная _TEL_INPUT_UTILS
относится к служебному скрипту intl-tel-input
после загрузки. Я пытаюсь отформатировать число в моем text box
.
Этот код находится в:
$(document).ready(function(){
//...
})
Теперь у меня есть код в app.js
, который находится за пределами loadUtils
, и я хочу отформатировать это число в переменной.
Когда я вызываю тот же loadUtils
, Я получаю ошибку:
jQuery.Deferred exception: window.intlTelInputGlobals.loadUtils(...) is null my_scpecific_funcation@webpack:///./src/app.js?:258:13
Вопрос в том, как я могу отформатировать число внутри переменной?Нужно ли использовать loadUtils
каждый раз?Есть ли лучший способ для всего процесса?