错误使用 CDN(libphonenumber-js)或 CDN 不工作?

Wrong use of CDN (libphonenumber-js) or CDN not working?

我正在尝试使用库 libphonenumber-js。

<body>

    <script src="https://unpkg.com/libphonenumber-js@1.9.9/bundle/libphonenumber-min.js"></script>

    <script src="./js/main.js"></script>

</body>

在我的 main.js 中,我尝试编写一个简单的代码,该代码来自 libphonenumber-js 的文档:

    const phoneNumber = parsePhoneNumber('+12133734253');

但是我得到了这个错误。与文档中的其他功能相同。

Uncaught ReferenceError: parsePhoneNumber is not defined

在我的网络选项卡中,我可以看到正在下载 min.js 文件。但由于某些原因,它的功能无法使用。我尝试制作一个 min.js 文件并使用它,但运气不好。

我还尝试了许多不同的 CDN 服务,这些服务也托管了这个库。

对于任何想知道的人:

我在 repo 的问题页面中发现你必须在前面使用 window.libphonenumberlibphonenumber的功能。所以

window.libphonenumber.parsePhoneNumberFromString(
      '(213) 373-42-53 ext. 1234',
      'US'
    );

同样在我的例子中,正确的函数是 parsePhoneNumberFromString

This fixed it for me, But since it still returns 3 digits, which causes the field to change, triggering the event again and making it auto-format right back into what it was.

if (value.includes('(') && !value.includes(')')) {
      const tempValue = value.replace('(', '');
      return tempValue.slice(0, tempValue.length - 1);
}