angular - Hur man använder Google libphonenumber i Typescript?
Jag vill använda Google libphonenumber i mitt Angular-projekt med Typescript. Jag har sökt mycket på internet och hittade mycket information men kunde inte hitta något som kunde uppfylla mitt syfte.
Det mesta av det tillgängliga innehållet visar koden i JavaScript. Om jag använder samma kod i Typescript visas många fel som cannot find name require eller module not found. Vänligen berätta hur/var/vad jag ska skriva koden.
Berätta också vilken paket jag ska installera eftersom det finns många - libphonenumber, google-libphonenumber, angular-libphonenumber
Svar #1
När man hanterar CommonJS-bibliotek, i TypeScript precis som detta google-libphonenumber, skulle jag vilja föreslå 2 sätt om det (Testat av mig och fungerar bra).
Inledningsvis skulle jag vilja föreslå att installera från NPM precis så här: npm install --save google-libphonenumber.
Då, här går vi båda sätten att använda det:
1:a metoden
Importera det direkt
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
}
}
2:a metoden
Du kan fortfarande använda kraften i Typescript-typning eller bara använda den befintliga genom: npm install --save-dev @types/google-libphonenumber.
Eftersom du sa att du använder Angular, kan du deklarera att den typningen just installerades i src/tsconfig.app.json (jag använder Angular version 7). Här är ett exempel som jag har gjort:
{
...
"compilerOptions": {
...
"types": [
"google-libphonenumber"
]
},
...
}
Då kan du bara importera det som vanligt, på Typescript-sätt med "typningar" enligt följande:
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
}
}
Svar #2
du kan antingen gå med libphonenumber eller google-libphonenumber eftersom båda dessa bibliotek har ett bra antal installationer, och google-libphonenumber verkar också vara mer kraftfullt
