@andy922200/vue-tw-zip-code-selector
Version:
A Taiwan-Zip-Code-Selector via Vue 3.0 & TypeScript
1,659 lines (1,643 loc) • 25.6 kB
JavaScript
import { defineComponent, ref, computed, openBlock, createBlock, withDirectives, createVNode, Fragment, renderList, toDisplayString, vModelSelect } from 'vue';
const countyList = [{
name: '台北市',
param: 'A'
}, {
name: '基隆市',
param: 'C'
}, {
name: '新北市',
param: 'F'
}, {
name: '宜蘭縣',
param: 'G'
}, {
name: '新竹市',
param: 'O'
}, {
name: '新竹縣',
param: 'J'
}, {
name: '桃園市',
param: 'H'
}, {
name: '苗栗縣',
param: 'K'
}, {
name: '台中市',
param: 'B'
}, {
name: '彰化縣',
param: 'N'
}, {
name: '南投縣',
param: 'M'
}, {
name: '嘉義市',
param: 'I'
}, {
name: '嘉義縣',
param: 'Q'
}, {
name: '雲林縣',
param: 'P'
}, {
name: '台南市',
param: 'D'
}, {
name: '高雄市',
param: 'E'
}, {
name: '澎湖縣',
param: 'X'
}, {
name: '屏東縣',
param: 'T'
}, {
name: '台東縣',
param: 'V'
}, {
name: '花蓮縣',
param: 'U'
}, {
name: '金門縣',
param: 'W'
}, {
name: '連江縣',
param: 'Z'
}];
const zoneList = [{
name: '中正區',
zipCode: '100',
county: 'A'
}, {
name: '大同區',
zipCode: '103',
county: 'A'
}, {
name: '中山區',
zipCode: '104',
county: 'A'
}, {
name: '松山區',
zipCode: '105',
county: 'A'
}, {
name: '大安區',
zipCode: '106',
county: 'A'
}, {
name: '萬華區',
zipCode: '108',
county: 'A'
}, {
name: '信義區',
zipCode: '110',
county: 'A'
}, {
name: '士林區',
zipCode: '111',
county: 'A'
}, {
name: '北投區',
zipCode: '112',
county: 'A'
}, {
name: '內湖區',
zipCode: '114',
county: 'A'
}, {
name: '南港區',
zipCode: '115',
county: 'A'
}, {
name: '文山區',
zipCode: '116',
county: 'A'
}, {
name: '仁愛區',
zipCode: '200',
county: 'C'
}, {
name: '信義區',
zipCode: '201',
county: 'C'
}, {
name: '中正區',
zipCode: '202',
county: 'C'
}, {
name: '中山區',
zipCode: '203',
county: 'C'
}, {
name: '安樂區',
zipCode: '204',
county: 'C'
}, {
name: '暖暖區',
zipCode: '205',
county: 'C'
}, {
name: '七堵區',
zipCode: '206',
county: 'C'
}, {
name: '萬里區',
zipCode: '207',
county: 'F'
}, {
name: '金山區',
zipCode: '208',
county: 'F'
}, {
name: '板橋區',
zipCode: '220',
county: 'F'
}, {
name: '汐止區',
zipCode: '221',
county: 'F'
}, {
name: '深坑區',
zipCode: '222',
county: 'F'
}, {
name: '石碇區',
zipCode: '223',
county: 'F'
}, {
name: '瑞芳區',
zipCode: '224',
county: 'F'
}, {
name: '平溪區',
zipCode: '226',
county: 'F'
}, {
name: '雙溪區',
zipCode: '227',
county: 'F'
}, {
name: '貢寮區',
zipCode: '228',
county: 'F'
}, {
name: '新店區',
zipCode: '231',
county: 'F'
}, {
name: '坪林區',
zipCode: '232',
county: 'F'
}, {
name: '烏來區',
zipCode: '233',
county: 'F'
}, {
name: '永和區',
zipCode: '234',
county: 'F'
}, {
name: '中和區',
zipCode: '235',
county: 'F'
}, {
name: '土城區',
zipCode: '236',
county: 'F'
}, {
name: '三峽區',
zipCode: '237',
county: 'F'
}, {
name: '樹林區',
zipCode: '238',
county: 'F'
}, {
name: '鶯歌區',
zipCode: '239',
county: 'F'
}, {
name: '三重區',
zipCode: '241',
county: 'F'
}, {
name: '新莊區',
zipCode: '242',
county: 'F'
}, {
name: '泰山區',
zipCode: '243',
county: 'F'
}, {
name: '林口區',
zipCode: '244',
county: 'F'
}, {
name: '蘆洲區',
zipCode: '247',
county: 'F'
}, {
name: '五股區',
zipCode: '248',
county: 'F'
}, {
name: '八里區',
zipCode: '249',
county: 'F'
}, {
name: '淡水區',
zipCode: '251',
county: 'F'
}, {
name: '三芝區',
zipCode: '252',
county: 'F'
}, {
name: '石門區',
zipCode: '253',
county: 'F'
}, {
name: '宜蘭市',
zipCode: '260',
county: 'G'
}, {
name: '頭城鎮',
zipCode: '261',
county: 'G'
}, {
name: '礁溪鄉',
zipCode: '262',
county: 'G'
}, {
name: '壯圍鄉',
zipCode: '263',
county: 'G'
}, {
name: '員山鄉',
zipCode: '264',
county: 'G'
}, {
name: '羅東鎮',
zipCode: '265',
county: 'G'
}, {
name: '三星鄉',
zipCode: '266',
county: 'G'
}, {
name: '大同鄉',
zipCode: '267',
county: 'G'
}, {
name: '五結鄉',
zipCode: '268',
county: 'G'
}, {
name: '冬山鄉',
zipCode: '269',
county: 'G'
}, {
name: '蘇澳鎮',
zipCode: '270',
county: 'G'
}, {
name: '南澳鄉',
zipCode: '272',
county: 'G'
}, {
name: '釣魚臺列嶼',
zipCode: '290',
county: 'G'
}, {
name: '北區',
zipCode: '300',
county: 'O'
}, {
name: '東區',
zipCode: '300',
county: 'O'
}, {
name: '香山區',
zipCode: '300',
county: 'O'
}, {
name: '竹北市',
zipCode: '302',
county: 'J'
}, {
name: '湖口鄉',
zipCode: '303',
county: 'J'
}, {
name: '新豐鄉',
zipCode: '304',
county: 'J'
}, {
name: '新埔鎮',
zipCode: '305',
county: 'J'
}, {
name: '關西鎮',
zipCode: '306',
county: 'J'
}, {
name: '芎林鄉',
zipCode: '307',
county: 'J'
}, {
name: '寶山鄉',
zipCode: '308',
county: 'J'
}, {
name: '竹東鎮',
zipCode: '310',
county: 'J'
}, {
name: '五峰鄉',
zipCode: '311',
county: 'J'
}, {
name: '橫山鄉',
zipCode: '312',
county: 'J'
}, {
name: '尖石鄉',
zipCode: '313',
county: 'J'
}, {
name: '北埔鄉',
zipCode: '314',
county: 'J'
}, {
name: '峨眉鄉',
zipCode: '315',
county: 'J'
}, {
name: '中壢區',
zipCode: '320',
county: 'H'
}, {
name: '平鎮區',
zipCode: '324',
county: 'H'
}, {
name: '龍潭區',
zipCode: '325',
county: 'H'
}, {
name: '楊梅區',
zipCode: '326',
county: 'H'
}, {
name: '新屋區',
zipCode: '327',
county: 'H'
}, {
name: '觀音區',
zipCode: '328',
county: 'H'
}, {
name: '桃園區',
zipCode: '330',
county: 'H'
}, {
name: '龜山區',
zipCode: '333',
county: 'H'
}, {
name: '八德區',
zipCode: '334',
county: 'H'
}, {
name: '大溪區',
zipCode: '335',
county: 'H'
}, {
name: '復興區',
zipCode: '336',
county: 'H'
}, {
name: '大園區',
zipCode: '337',
county: 'H'
}, {
name: '蘆竹區',
zipCode: '338',
county: 'H'
}, {
name: '竹南鎮',
zipCode: '350',
county: 'K'
}, {
name: '頭份市',
zipCode: '351',
county: 'K'
}, {
name: '三灣鄉',
zipCode: '352',
county: 'K'
}, {
name: '南庄鄉',
zipCode: '353',
county: 'K'
}, {
name: '獅潭鄉',
zipCode: '354',
county: 'K'
}, {
name: '後龍鎮',
zipCode: '356',
county: 'K'
}, {
name: '通霄鎮',
zipCode: '357',
county: 'K'
}, {
name: '苑裡鎮',
zipCode: '358',
county: 'K'
}, {
name: '苗栗市',
zipCode: '360',
county: 'K'
}, {
name: '造橋鄉',
zipCode: '361',
county: 'K'
}, {
name: '頭屋鄉',
zipCode: '362',
county: 'K'
}, {
name: '公館鄉',
zipCode: '363',
county: 'K'
}, {
name: '大湖鄉',
zipCode: '364',
county: 'K'
}, {
name: '泰安鄉',
zipCode: '365',
county: 'K'
}, {
name: '銅鑼鄉',
zipCode: '366',
county: 'K'
}, {
name: '三義鄉',
zipCode: '367',
county: 'K'
}, {
name: '西湖鄉',
zipCode: '368',
county: 'K'
}, {
name: '卓蘭鎮',
zipCode: '369',
county: 'K'
}, {
name: '中區',
zipCode: '400',
county: 'B'
}, {
name: '東區',
zipCode: '401',
county: 'B'
}, {
name: '南區',
zipCode: '402',
county: 'B'
}, {
name: '西區',
zipCode: '403',
county: 'B'
}, {
name: '北區',
zipCode: '404',
county: 'B'
}, {
name: '北屯區',
zipCode: '406',
county: 'B'
}, {
name: '西屯區',
zipCode: '407',
county: 'B'
}, {
name: '南屯區',
zipCode: '408',
county: 'B'
}, {
name: '太平區',
zipCode: '411',
county: 'B'
}, {
name: '大里區',
zipCode: '412',
county: 'B'
}, {
name: '霧峰區',
zipCode: '413',
county: 'B'
}, {
name: '鳥日區',
zipCode: '414',
county: 'B'
}, {
name: '豐原區',
zipCode: '420',
county: 'B'
}, {
name: '后里區',
zipCode: '421',
county: 'B'
}, {
name: '石岡區',
zipCode: '422',
county: 'B'
}, {
name: '東勢區',
zipCode: '423',
county: 'B'
}, {
name: '和平區',
zipCode: '424',
county: 'B'
}, {
name: '新社區',
zipCode: '426',
county: 'B'
}, {
name: '潭子區',
zipCode: '427',
county: 'B'
}, {
name: '大雅區',
zipCode: '428',
county: 'B'
}, {
name: '神岡區',
zipCode: '429',
county: 'B'
}, {
name: '大肚區',
zipCode: '432',
county: 'B'
}, {
name: '沙鹿區',
zipCode: '433',
county: 'B'
}, {
name: '龍井區',
zipCode: '434',
county: 'B'
}, {
name: '梧棲區',
zipCode: '435',
county: 'B'
}, {
name: '清水區',
zipCode: '436',
county: 'B'
}, {
name: '大甲區',
zipCode: '437',
county: 'B'
}, {
name: '外埔區',
zipCode: '438',
county: 'B'
}, {
name: '大安區',
zipCode: '439',
county: 'B'
}, {
name: '彰化市',
zipCode: '500',
county: 'N'
}, {
name: '芬園鄉',
zipCode: '502',
county: 'N'
}, {
name: '花壇鄉',
zipCode: '503',
county: 'N'
}, {
name: '秀水鄉',
zipCode: '504',
county: 'N'
}, {
name: '鹿港鎮',
zipCode: '505',
county: 'N'
}, {
name: '福興鄉',
zipCode: '506',
county: 'N'
}, {
name: '線西鄉',
zipCode: '507',
county: 'N'
}, {
name: '和美鎮',
zipCode: '508',
county: 'N'
}, {
name: '伸港鄉',
zipCode: '509',
county: 'N'
}, {
name: '員林市',
zipCode: '510',
county: 'N'
}, {
name: '社頭鄉',
zipCode: '511',
county: 'N'
}, {
name: '永靖鄉',
zipCode: '512',
county: 'N'
}, {
name: '埔心鄉',
zipCode: '513',
county: 'N'
}, {
name: '溪湖鎮',
zipCode: '514',
county: 'N'
}, {
name: '大村鄉',
zipCode: '515',
county: 'N'
}, {
name: '埔鹽鄉',
zipCode: '516',
county: 'N'
}, {
name: '田中鎮',
zipCode: '520',
county: 'N'
}, {
name: '北斗鎮',
zipCode: '521',
county: 'N'
}, {
name: '田尾鄉',
zipCode: '522',
county: 'N'
}, {
name: '埤頭鄉',
zipCode: '523',
county: 'N'
}, {
name: '溪州鄉',
zipCode: '524',
county: 'N'
}, {
name: '竹塘鄉',
zipCode: '525',
county: 'N'
}, {
name: '二林鎮',
zipCode: '526',
county: 'N'
}, {
name: '大城鄉',
zipCode: '527',
county: 'N'
}, {
name: '芳苑鄉',
zipCode: '528',
county: 'N'
}, {
name: '二水鄉',
zipCode: '530',
county: 'N'
}, {
name: '南投市',
zipCode: '540',
county: 'M'
}, {
name: '中寮鄉',
zipCode: '541',
county: 'M'
}, {
name: '草屯鎮',
zipCode: '542',
county: 'M'
}, {
name: '國姓鄉',
zipCode: '544',
county: 'M'
}, {
name: '埔里鎮',
zipCode: '545',
county: 'M'
}, {
name: '仁愛鄉',
zipCode: '546',
county: 'M'
}, {
name: '名間鄉',
zipCode: '551',
county: 'M'
}, {
name: '集集鎮',
zipCode: '552',
county: 'M'
}, {
name: '水里鄉',
zipCode: '553',
county: 'M'
}, {
name: '魚池鄉',
zipCode: '555',
county: 'M'
}, {
name: '信義鄉',
zipCode: '556',
county: 'M'
}, {
name: '竹山鎮',
zipCode: '557',
county: 'M'
}, {
name: '鹿谷鄉',
zipCode: '558',
county: 'M'
}, {
name: '嘉義市',
zipCode: '600',
county: 'I'
}, {
name: '番路鄉',
zipCode: '602',
county: 'Q'
}, {
name: '梅山鄉',
zipCode: '603',
county: 'Q'
}, {
name: '竹崎鄉',
zipCode: '604',
county: 'Q'
}, {
name: '阿里山鄉',
zipCode: '605',
county: 'Q'
}, {
name: '中埔鄉',
zipCode: '606',
county: 'Q'
}, {
name: '大埔鄉',
zipCode: '607',
county: 'Q'
}, {
name: '水上鄉',
zipCode: '608',
county: 'Q'
}, {
name: '鹿草鄉',
zipCode: '611',
county: 'Q'
}, {
name: '太保市',
zipCode: '612',
county: 'Q'
}, {
name: '朴子市',
zipCode: '613',
county: 'Q'
}, {
name: '東石鄉',
zipCode: '614',
county: 'Q'
}, {
name: '六腳鄉',
zipCode: '615',
county: 'Q'
}, {
name: '新港鄉',
zipCode: '616',
county: 'Q'
}, {
name: '民雄鄉',
zipCode: '621',
county: 'Q'
}, {
name: '大林鎮',
zipCode: '622',
county: 'Q'
}, {
name: '溪口鄉',
zipCode: '623',
county: 'Q'
}, {
name: '義竹鄉',
zipCode: '624',
county: 'Q'
}, {
name: '布袋鎮',
zipCode: '625',
county: 'Q'
}, {
name: '斗南鎮',
zipCode: '630',
county: 'P'
}, {
name: '大埤鄉',
zipCode: '631',
county: 'P'
}, {
name: '虎尾鎮',
zipCode: '632',
county: 'P'
}, {
name: '土庫鎮',
zipCode: '633',
county: 'P'
}, {
name: '褒忠鄉',
zipCode: '634',
county: 'P'
}, {
name: '東勢鄉',
zipCode: '635',
county: 'P'
}, {
name: '臺西鄉',
zipCode: '636',
county: 'P'
}, {
name: '崙背鄉',
zipCode: '637',
county: 'P'
}, {
name: '麥寮鄉',
zipCode: '638',
county: 'P'
}, {
name: '斗六市',
zipCode: '640',
county: 'P'
}, {
name: '林內鄉',
zipCode: '643',
county: 'P'
}, {
name: '古坑鄉',
zipCode: '646',
county: 'P'
}, {
name: '莿桐鄉',
zipCode: '647',
county: 'P'
}, {
name: '西螺鎮',
zipCode: '648',
county: 'P'
}, {
name: '二崙鄉',
zipCode: '649',
county: 'P'
}, {
name: '北港鎮',
zipCode: '651',
county: 'P'
}, {
name: '水林鄉',
zipCode: '652',
county: 'P'
}, {
name: '口湖鄉',
zipCode: '653',
county: 'P'
}, {
name: '四湖鄉',
zipCode: '654',
county: 'P'
}, {
name: '元長鄉',
zipCode: '655',
county: 'P'
}, {
name: '中西區',
zipCode: '700',
county: 'D'
}, {
name: '東區',
zipCode: '701',
county: 'D'
}, {
name: '南區',
zipCode: '702',
county: 'D'
}, {
name: '北區',
zipCode: '704',
county: 'D'
}, {
name: '安平區',
zipCode: '708',
county: 'D'
}, {
name: '安南區',
zipCode: '709',
county: 'D'
}, {
name: '永康區',
zipCode: '710',
county: 'D'
}, {
name: '歸仁區',
zipCode: '711',
county: 'D'
}, {
name: '新化區',
zipCode: '712',
county: 'D'
}, {
name: '左鎮區',
zipCode: '713',
county: 'D'
}, {
name: '玉井區',
zipCode: '714',
county: 'D'
}, {
name: '楠西區',
zipCode: '715',
county: 'D'
}, {
name: '南化區',
zipCode: '716',
county: 'D'
}, {
name: '仁德區',
zipCode: '717',
county: 'D'
}, {
name: '關廟區',
zipCode: '718',
county: 'D'
}, {
name: '龍崎區',
zipCode: '719',
county: 'D'
}, {
name: '官田區',
zipCode: '720',
county: 'D'
}, {
name: '麻豆區',
zipCode: '721',
county: 'D'
}, {
name: '佳里區',
zipCode: '722',
county: 'D'
}, {
name: '西港區',
zipCode: '723',
county: 'D'
}, {
name: '七股區',
zipCode: '724',
county: 'D'
}, {
name: '將軍區',
zipCode: '725',
county: 'D'
}, {
name: '學甲區',
zipCode: '726',
county: 'D'
}, {
name: '北門區',
zipCode: '727',
county: 'D'
}, {
name: '新營區',
zipCode: '730',
county: 'D'
}, {
name: '後壁區',
zipCode: '731',
county: 'D'
}, {
name: '白河區',
zipCode: '732',
county: 'D'
}, {
name: '東山區',
zipCode: '733',
county: 'D'
}, {
name: '六甲區',
zipCode: '734',
county: 'D'
}, {
name: '下營區',
zipCode: '735',
county: 'D'
}, {
name: '柳營區',
zipCode: '736',
county: 'D'
}, {
name: '鹽水區',
zipCode: '737',
county: 'D'
}, {
name: '善化區',
zipCode: '741',
county: 'D'
}, {
name: '大內區',
zipCode: '742',
county: 'D'
}, {
name: '山上區',
zipCode: '743',
county: 'D'
}, {
name: '新市區',
zipCode: '744',
county: 'D'
}, {
name: '安定區',
zipCode: '745',
county: 'D'
}, {
name: '新興區',
zipCode: '800',
county: 'E'
}, {
name: '前金區',
zipCode: '801',
county: 'E'
}, {
name: '苓雅區',
zipCode: '802',
county: 'E'
}, {
name: '鹽埕區',
zipCode: '803',
county: 'E'
}, {
name: '鼓山區',
zipCode: '804',
county: 'E'
}, {
name: '旗津區',
zipCode: '805',
county: 'E'
}, {
name: '前鎮區',
zipCode: '806',
county: 'E'
}, {
name: '三民區',
zipCode: '807',
county: 'E'
}, {
name: '楠梓區',
zipCode: '811',
county: 'E'
}, {
name: '小港區',
zipCode: '812',
county: 'E'
}, {
name: '左營區',
zipCode: '813',
county: 'E'
}, {
name: '仁武區',
zipCode: '814',
county: 'E'
}, {
name: '大社區',
zipCode: '815',
county: 'E'
}, {
name: '岡山區',
zipCode: '820',
county: 'E'
}, {
name: '路竹區',
zipCode: '821',
county: 'E'
}, {
name: '阿蓮區',
zipCode: '822',
county: 'E'
}, {
name: '田寮區',
zipCode: '823',
county: 'E'
}, {
name: '燕巢區',
zipCode: '824',
county: 'E'
}, {
name: '橋頭區',
zipCode: '825',
county: 'E'
}, {
name: '梓官區',
zipCode: '826',
county: 'E'
}, {
name: '彌陀區',
zipCode: '827',
county: 'E'
}, {
name: '永安區',
zipCode: '828',
county: 'E'
}, {
name: '湖內區',
zipCode: '829',
county: 'E'
}, {
name: '鳳山區',
zipCode: '830',
county: 'E'
}, {
name: '大寮區',
zipCode: '831',
county: 'E'
}, {
name: '林園區',
zipCode: '832',
county: 'E'
}, {
name: '鳥松區',
zipCode: '833',
county: 'E'
}, {
name: '大樹區',
zipCode: '840',
county: 'E'
}, {
name: '旗山區',
zipCode: '842',
county: 'E'
}, {
name: '美濃區',
zipCode: '843',
county: 'E'
}, {
name: '六龜區',
zipCode: '844',
county: 'E'
}, {
name: '內門區',
zipCode: '845',
county: 'E'
}, {
name: '杉林區',
zipCode: '846',
county: 'E'
}, {
name: '甲仙區',
zipCode: '847',
county: 'E'
}, {
name: '桃源區',
zipCode: '848',
county: 'E'
}, {
name: '那瑪夏區',
zipCode: '849',
county: 'E'
}, {
name: '茂林區',
zipCode: '851',
county: 'E'
}, {
name: '茄萣區',
zipCode: '852',
county: 'E'
}, {
name: '東沙群島',
zipCode: '817',
county: 'E'
}, {
name: '南沙群島',
zipCode: '819',
county: 'E'
}, {
name: '馬公市',
zipCode: '880',
county: 'X'
}, {
name: '西嶼鄉',
zipCode: '881',
county: 'X'
}, {
name: '望安鄉',
zipCode: '882',
county: 'X'
}, {
name: '七美鄉',
zipCode: '883',
county: 'X'
}, {
name: '白沙鄉',
zipCode: '884',
county: 'X'
}, {
name: '湖西鄉',
zipCode: '885',
county: 'X'
}, {
name: '屏東市',
zipCode: '900',
county: 'T'
}, {
name: '三地門鄉',
zipCode: '901',
county: 'T'
}, {
name: '霧臺鄉',
zipCode: '902',
county: 'T'
}, {
name: '瑪家鄉',
zipCode: '903',
county: 'T'
}, {
name: '九如鄉',
zipCode: '904',
county: 'T'
}, {
name: '里港鄉',
zipCode: '905',
county: 'T'
}, {
name: '高樹鄉',
zipCode: '906',
county: 'T'
}, {
name: '鹽埔鄉',
zipCode: '907',
county: 'T'
}, {
name: '長治鄉',
zipCode: '908',
county: 'T'
}, {
name: '麟洛鄉',
zipCode: '909',
county: 'T'
}, {
name: '竹田鄉',
zipCode: '911',
county: 'T'
}, {
name: '內埔鄉',
zipCode: '912',
county: 'T'
}, {
name: '萬丹鄉',
zipCode: '913',
county: 'T'
}, {
name: '潮州鎮',
zipCode: '920',
county: 'T'
}, {
name: '泰武鄉',
zipCode: '921',
county: 'T'
}, {
name: '來義鄉',
zipCode: '922',
county: 'T'
}, {
name: '萬巒鄉',
zipCode: '923',
county: 'T'
}, {
name: '崁頂鄉',
zipCode: '924',
county: 'T'
}, {
name: '新埤鄉',
zipCode: '925',
county: 'T'
}, {
name: '南州鄉',
zipCode: '926',
county: 'T'
}, {
name: '林邊鄉',
zipCode: '927',
county: 'T'
}, {
name: '東港鎮',
zipCode: '928',
county: 'T'
}, {
name: '琉球鄉',
zipCode: '929',
county: 'T'
}, {
name: '佳冬鄉',
zipCode: '931',
county: 'T'
}, {
name: '新園鄉',
zipCode: '932',
county: 'T'
}, {
name: '枋寮鄉',
zipCode: '940',
county: 'T'
}, {
name: '枋山鄉',
zipCode: '941',
county: 'T'
}, {
name: '春日鄉',
zipCode: '942',
county: 'T'
}, {
name: '獅子鄉',
zipCode: '943',
county: 'T'
}, {
name: '車城鄉',
zipCode: '944',
county: 'T'
}, {
name: '牡丹鄉',
zipCode: '945',
county: 'T'
}, {
name: '恆春鎮',
zipCode: '946',
county: 'T'
}, {
name: '滿州鄉',
zipCode: '947',
county: 'T'
}, {
name: '臺東市',
zipCode: '950',
county: 'V'
}, {
name: '綠島鄉',
zipCode: '951',
county: 'V'
}, {
name: '蘭嶼鄉',
zipCode: '952',
county: 'V'
}, {
name: '延平鄉',
zipCode: '953',
county: 'V'
}, {
name: '卑南鄉',
zipCode: '954',
county: 'V'
}, {
name: '鹿野鄉',
zipCode: '955',
county: 'V'
}, {
name: '關山鎮',
zipCode: '956',
county: 'V'
}, {
name: '海端鄉',
zipCode: '957',
county: 'V'
}, {
name: '池上鄉',
zipCode: '958',
county: 'V'
}, {
name: '東河鄉',
zipCode: '959',
county: 'V'
}, {
name: '成功鎮',
zipCode: '961',
county: 'V'
}, {
name: '長濱鄉',
zipCode: '962',
county: 'V'
}, {
name: '太麻里鄉',
zipCode: '963',
county: 'V'
}, {
name: '金峰鄉',
zipCode: '964',
county: 'V'
}, {
name: '大武鄉',
zipCode: '965',
county: 'V'
}, {
name: '達仁鄉',
zipCode: '966',
county: 'V'
}, {
name: '花蓮市',
zipCode: '970',
county: 'U'
}, {
name: '新城鄉',
zipCode: '971',
county: 'U'
}, {
name: '秀林鄉',
zipCode: '972',
county: 'U'
}, {
name: '吉安鄉',
zipCode: '973',
county: 'U'
}, {
name: '壽豐鄉',
zipCode: '974',
county: 'U'
}, {
name: '鳳林鎮',
zipCode: '975',
county: 'U'
}, {
name: '光復鄉',
zipCode: '976',
county: 'U'
}, {
name: '豐濱鄉',
zipCode: '977',
county: 'U'
}, {
name: '瑞穗鄉',
zipCode: '978',
county: 'U'
}, {
name: '萬榮鄉',
zipCode: '979',
county: 'U'
}, {
name: '玉里鎮',
zipCode: '981',
county: 'U'
}, {
name: '卓溪鄉',
zipCode: '982',
county: 'U'
}, {
name: '富里鄉',
zipCode: '983',
county: 'U'
}, {
name: '金沙鎮',
zipCode: '890',
county: 'W'
}, {
name: '金湖鎮',
zipCode: '891',
county: 'W'
}, {
name: '金寧鄉',
zipCode: '892',
county: 'W'
}, {
name: '金城鎮',
zipCode: '893',
county: 'W'
}, {
name: '烈嶼鄉',
zipCode: '894',
county: 'W'
}, {
name: '烏坵鄉',
zipCode: '896',
county: 'W'
}, {
name: '南竿鄉',
zipCode: '209',
county: 'Z'
}, {
name: '北竿鄉',
zipCode: '210',
county: 'Z'
}, {
name: '莒光鄉',
zipCode: '211',
county: 'Z'
}, {
name: '東引鄉',
zipCode: '212',
county: 'Z'
}];
var script = defineComponent({
name: 'VueTwZipCodeSelector',
emits: ['getSelectedZone'],
setup(props, {
emit
}) {
const countyDefault = {
name: '',
param: ''
};
const zoneDefault = {
name: '',
zipCode: '',
county: '',
countyName: ''
};
const selectedCounty = ref(countyDefault);
const selectedZone = ref(zoneDefault);
const counties = countyList;
const zones = computed(() => zoneList.filter(zone => zone.county === selectedCounty.value.param).map(d => {
return { ...d,
countyName: selectedCounty.value.name
};
}));
const resetCounty = () => {
selectedZone.value = zoneDefault;
emit('getSelectedZone', selectedZone);
};
const getSelectedZone = () => {
emit('getSelectedZone', selectedZone);
};
return {
selectedCounty,
selectedZone,
counties,
zones,
resetCounty,
getSelectedZone
};
}
});
const _hoisted_1 = {
class: "TwZipSelectCore__wrapper"
};
const _hoisted_2 = /*#__PURE__*/createVNode("option", {
value: {
name: '',
param: ''
},
disabled: ""
}, "請選擇縣市", -1);
const _hoisted_3 = /*#__PURE__*/createVNode("option", {
value: {
name: '',
zipCode: '',
county: '',
countyName: ''
},
disabled: ""
}, "請選擇鄉鎮市區", -1);
function render(_ctx, _cache, $props, $setup, $data, $options) {
return openBlock(), createBlock("div", _hoisted_1, [withDirectives(createVNode("select", {
class: "TwZipSelectCore__select",
"onUpdate:modelValue": _cache[1] || (_cache[1] = $event => _ctx.selectedCounty = $event),
onChange: _cache[2] || (_cache[2] = (...args) => _ctx.resetCounty && _ctx.resetCounty(...args))
}, [_hoisted_2, (openBlock(true), createBlock(Fragment, null, renderList(_ctx.counties, county => {
return openBlock(), createBlock("option", {
key: county.param,
value: county
}, toDisplayString(county.name), 9, ["value"]);
}), 128))], 544), [[vModelSelect, _ctx.selectedCounty]]), withDirectives(createVNode("select", {
class: "TwZipSelectCore__select",
"onUpdate:modelValue": _cache[3] || (_cache[3] = $event => _ctx.selectedZone = $event),
onChange: _cache[4] || (_cache[4] = (...args) => _ctx.getSelectedZone && _ctx.getSelectedZone(...args))
}, [_hoisted_3, (openBlock(true), createBlock(Fragment, null, renderList(_ctx.zones, zone => {
return openBlock(), createBlock("option", {
key: zone.name,
value: zone
}, toDisplayString(zone.name), 9, ["value"]);
}), 128))], 544), [[vModelSelect, _ctx.selectedZone]])]);
}
script.render = render;
var components = /*#__PURE__*/Object.freeze({
__proto__: null,
VueTwZipCodeSelector: script
});
// Import vue components
const install = function installVueTwZipCodeSelector(app) {
Object.entries(components).forEach(([componentName, component]) => {
app.component(componentName, component);
});
}; // Create module definition for Vue.use()
export default install;
export { script as VueTwZipCodeSelector };