How to use Google libphonenumber in Typescript?

别等时光非礼了梦想. 提交于 2019-12-14 03:32:05

问题


I want to use Google libphonenumber in my angular project using Typescript. I have searched a lot on internet and found a lot of stuff but could not find anything that could serve my purpose.

Most of the content available shows the code in JavaScript. If I use the same code in typescript, it shows lot of error like 'cannot find name require' or 'module not found'. Please tell me how/where/what to write the code.

Also, plz tell me which package to install as there are many - libphonenumber, google-libphonenumber, angular-libphonenumber


回答1:


you may either go with libphonenumber or google-libphonenumber as both of this library having a good number of installs also google-libphonenumber seems to be more powerful




回答2:


when dealing with CommonJS libraries, in TypeScript just like this google-libphonenumber, I'd like to suggest 2 ways about it (Tested by me and works well).

First time I'd like to suggest to install from NPM just like this: npm install --save google-libphonenumber.

Then here we go the 2 ways of using it:

1st Method

Just import it directly

import libphonenumber from 'google-libphonenumber';
class Something {
    constructor() {//Just example, you can chose any method
        const phoneUtil = libphonenumber.PhoneNumberUtil.getInstance();
        console.log( phoneUtil.getSupportedRegions() );//It should works and give you some output
    }
}

2nd Method

You still can make the power of Typescript typing or just use the existing one by: npm install --save-dev @types/google-libphonenumber.

Since you said that you using Angular, so you can declare that typing just installed at src/tsconfig.app.json ( I am using Angular Version 7 ). Here is an example I have made:

{
  ...
  "compilerOptions": {
    ...
    "types": [
      "google-libphonenumber"
    ]
  },
  ...
}

Then you can just import it like usual, in Typescript "typings" way like follow:

import { PhoneNumberUtil } from 'google-libphonenumber';

class Something {
    constructor() {//Just example, you can chose any method
        const phoneUtil: PhoneNumberUtil = PhoneNumberUtil.getInstance();
        console.log( phoneUtil.getSupportedRegions() );//It should works and give you some output
    }
}


来源:https://stackoverflow.com/questions/49293864/how-to-use-google-libphonenumber-in-typescript

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!