1.0.1 • Published 2 months ago

vue-country-select-2 v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 months ago

This is a forked repository. The original repo is here. I'm just added some new features.

Vue Country Select 2

Country selection dropdown for vue 2.

vue-country-select-2

Installation

  • yarn:
      yarn add vue-country-select-2
  • npm:
      npm i --save vue-country-select-2

Usage

  • Install as a global component:

    import Vue from "vue";
    import VueCountrySelect from "vue-country-select-2";
    
    Vue.use(VueCountrySelect);
  • Or use in a specific component

    import VueCountrySelect from 'vue-country-select-2'
    
    export default {
      components: {
        VueCountrySelect
      }
    }
  • In your component:

    <template>
    ...
      <vue-country-select
        @onSelect="onSelect"
        <!-- example props -->
        :preferredCountries="['TR', 'US', 'GB']">
        :disabledFetchingCountry="true"
        :defaultCountryByAreaCode="90"
        :immediateCallSelectEvent="true"
        :enabledFlags="true"
        :enabledCountryCode="true"
        :showNameInput="true"
        :showNotSelectedOption="true"
        :notSelectedOptionText="'Not Selected'"
      </vue-country-select>
    ...
    <template>
    <script>
    export default {
      methods: {
         onSelect({name, iso2, dialCode}) {
           console.log(name, iso2, dialCode);
         },
      },
    }
    </script>
  • Manual Trigger:

    <template>
    ...
      <vue-country-select
        ref="vcd"
        @onSelect="onSelect"
      </vue-country-select>
      <button @click="manualTrigger">Manual Trigger</button>
    ...
    <template>
    <script>
    export default {
      methods: {
         onSelect({name, iso2, dialCode}) {
           console.log(name, iso2, dialCode);
         },
         manualTrigger() {
           this.$refs.vcd.manualDropdown();
         }
      },
    }
    </script>

Props

Property valueTypeDefault valueDescription
defaultCountrystring''Default country, will override the country fetched from IP address of user
disabledFetchingCountryBooleanfalseDisable fetching current country based on IP address of user
enabledFlagsBooleantrueEnable flags in the input
enabledCountryCodeBooleanfalseEnable country code in the input
showNameInputBooleanfalseShows the name of the selected country
preferredCountriesArray[]Preferred countries list, will be on top of the dropdown. ie ['AU', 'BR']
onlyCountriesArray[]List of countries will be shown on the dropdown. ie ['AU', 'BR']
ignoredCountriesArray[]List of countries will NOT be shown on the dropdown. ie ['AU', 'BR']
dropdownOptionsObject{ disabledDialCode: false }Options for dropdown, supporting disabledDialCode
defaultCountryByAreaCodeNumber0Same as default country option. finds the default country from list by area code.
showNotSelectedOptionBooleanfalseThe Not Selected option is added to the top of the list. The Iso2 and area code value are empty.
notSelectedOptionTextStringNot SelectedReplace Not Selected text with another string.
immediateCallSelectEventBooleantrueCall the onSelect event when the component is mounted.
enablePreferredDividerBooleantrueEnable divider line under the preferred countries list
enableSearchCountryBooleantrueEnable search country by name

Events

Property valueArgumentsDescription
onSelectObjectFires when the input changes with the argument is the object includes { name, iso2, dialCode }

Highlights & Credits

Demo Usage

# install dependencies
$ yarn/npm install

# compile demo and start serve for development
$ yarn/npm dev

# build
$ yarn/npm build

Forked and updated by tryexcept0.