Collection of 231 countries with detailed, information, such a, 'languages', 'currencies', 'provinces', 'timezones' and etc. even link to "wiki". You can fetch only that fields which you need in specific country only or all together.
Also you have two way how to use this package:
- simple use, just import one function and fetch only that data which you need.
- for advanced users, graphQL
Install
npm i -S get-countries-info
vanilla-javaScript
; ; //will return array of all countries with all fields; //will return array of all countries name, note that you have to pass empty object as first argument; //return array of all provinces in USA
As you noted, first argument is query object, and second is a string name of property you want to fetch. Full data structure with all fields you'll see below. Also in vanilla-javaScript mode, you can fetch only one specific property at time or all together. So if you want to fetch couple additional properties, you have to call this function for each property, or you can use graphQL mode and in one query fetch all you need.
First argument is an object with queries, it supports following queries:
; let query = name: 'String' //country name capital: 'String' currency: 'String' region: 'String' language: 'String' ISO: 'String' //country ISO 3166-1 alpha-3 code; //to fetch all fields//or; //or to get only 'provinces'
graphQL
graphql
package is the same version as used in get-countries-info
or vice versa.
Make sure that your In your queries file:
;; let queries = name: 'Query' ... ... ... getCountries: countriesQuery ;
And that's it! Now you can use graphQL to query specific shape of object you need.
Query method support same variables as above: name: 'String', capital: 'String', currency: 'String', region: 'String', language: 'String', ISO: 'String'
.
Example
{ name wiki population ISO alpha2 alpha3 provinces }
Will return:
"data": "getCountries": "name": "United States" "wiki": "http://en.wikipedia.org/wiki/united_states_of_america" "population": 319259000 "ISO": "alpha2": "US" "alpha3": "USA" "provinces": "Alabama" "Alaska" "Arizona" "Arkansas" "California" ... ... ...
data-structure
Data always comes as array of objects. Each object presents country and has following shape.
name: String altSpellings: Array area: Number borders: Array callingCodes: Array capital: String currencies: Array demonym: String flag: String ISO: alpha2: String alpha3: String languages: Array latlng: Number nativeName: String population: Number provinces: Array region: String subregion: String timezones: Array tld: Array translations: de: String es: String fr: String ja: String it: String wiki: String