0

我正在尝试弄清楚如何在我的 requireJS JavaScript中访问Intl-Tel-Input库。我有以下代码,我需要回调在 requireJS 模块之外,因为它正在被第 3 方代码访问。

如何访问函数intlTelInput内部的代码callback

在我的 Twig 模板中:

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

我有这个config.js

require = {
    baseUrl: '/assets/js',
    paths: {
        'intl-tel-input': '/assets/vendor/intl-tel-input/build/js/intlTelInput.min',
    },
    shim: {
        'intl-tel-input': {
            deps: ['libphonenumber-utils']
        },
    }
};
4

1 回答 1

0

据我了解,您需要类似此代码段的内容,请看一下

<head>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.3/require.min.js"></script>
  <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/11.0.10/css/intlTelInput.css" />
  <script>
    require.config({
      paths: {
        'intl-tel-input': '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'
      }
    });
  </script>
</head>
<body>

  <input id="some-input" />
  <script>
    require(['intl-tel-input'], function () {
      function someCallback(){
        $('#some-input').intlTelInput();
      }

      setTimeout(someCallback, 1000);
    });
  </script>
</body>

于 2017-04-13T08:34:34.190 回答