libphonenumber standalone (sans les masses de dépendances de google)? Suppléant lib?

je suis à la recherche à l'aide de http://code.google.com/p/libphonenumber/ pour un projet. Aujourd'hui, le projet N'utilise pas les bibliothèques de Google pour JavaScript, favorisant jQuery, jQueryUI, requerjs, et ainsi de suite.

libphonenumber semble impressionnant ... sauf que la version javascript (svn co http://libphonenumber.googlecode.com/svn/trunk/javascript/ libphonenumber-js) est lacé avec goog.exiger des appels. Si on exécute la démo (libphonenumber-js/i18n/PhoneNumber/demo.html si vous avez vérifié comme suggéré) il tire des tonnes de bibliothèques google de closure-library.googlecode.com :

GET base.js
GET deps.js
GET error.js
GET string.js
GET asserts.js
GET array.js
GET useragent.js
GET browserfeature.js
GET tagname.js
GET classes.js
GET math.js
GET coordinate.js
GET size.js
GET object.js
GET dom.js
GET json.js
GET util.js
GET descriptor.js
GET fielddescriptor.js
GET message.js
GET serializer.js
GET objectserializer.js
GET stringbuffer.js
GET lazydeserializer.js
GET pbliteserializer.js

je crois que si je compile ceci en utilisant le compilateur de fermeture ("si vous donnez au paramètre use_closure_library une valeur de true, le compilateur recherche goog.require() énoncés dans le code source et les fournitures de la Fermeture de la Bibliothèque de code demandé par ce genre de déclarations.", https://developers.google.com/closure/compiler/docs/api-ref) je peux réduire le nombre brut de requêtes, mais cela semble encore comme une quantité plutôt excessive de contenu pour un analyseur de numéro de téléphone, même un plein-featured un.

Ma question a deux réponses possibles:

  1. une façon d'utiliser libphonenumber en JavaScript sans avoir à tirer dans toutes les bibliothèques de base de Google JavaScript
  2. une alternative autonome (comme dans n'a pas de douzaines des dépendances) bibliothèque de traitement de numéro de téléphone de première classe avec JavaScript et implémentations Java

toutes les suggestions sont les plus appréciées.

41
demandé sur Halfwarr 2012-07-17 21:48:39

4 réponses

j'ai un custom build (actuellement 220KB) que j'utilise pour mon International Téléphone D'Entrée plugin, avec beaucoup de fonctions d'assistance exposés. Lire la source pour plus de détails.

7
répondu jackocnr 2016-06-18 02:11:43

Vous pouvez aussi utiliser ma lib. https://github.com/Gilshallem/phoneparser

Sa a obtenu seulement une méthode, mais vous pouvez faire beaucoup de choses avec elle

parsePhone("12025550104");
result: { countryCode:1, areaCode:202, number:5550104, countryISOCode:"US" }
5
répondu Gil SH 2014-07-01 10:15:59

voici deux implémentations de Google libphonenumber en JavaScript qui ont des dépendances nulles et sont implémentées dans un seul fichier. J'ai utilisé la version de Nathan Hammond sans problème mais elle n'est pas sur NPM. La version de Rui Marinho est sur NPM.

1
répondu Grokify 2018-03-14 09:15:37
ici

baisse en place, avec l'habituelle

<script type="text/javascript" language="javascript" src="/static/js/libphonenumber-js.min.js"></script>

et obtenir occupé le codage!

<script>
    $(".phone-format").keyup(function () {
            var val_old = $(this).val();
            var newString = new libphonenumber.AsYouType('US').input(val_old);
            $(this).focus().val('').val(newString);
    });
</script>
0
répondu Chockomonkey 2018-08-10 21:24:29