Timezone Select 时区选择

基于 虚拟化选择器 USelectV2 的时区选择组件。时区标识列表与 UTC 偏移均来自 moment-timezone:列表为 moment.tz.names();偏移由 moment.utc(...).tz(iana)当前时刻计算。展示格式(UTC±HH:MM) + IANA,例如 (UTC+08:00) Asia/Shanghai:前半段为固定 UTC 与 moment 算出的 ±HH:MM右括号与 IANA 之间一个半角空格;选项文案不再做 Intl 本地化。绑定值仍为 IANA 字符串(与展示后缀一致)。

单选

绑定值为 IANA 时区标识字符串(如 Asia/Shanghai)。

Select

当前值:(未选择)

多选

设置 multiple 即可多选;选项较多时可配合 collapse-tags 折叠已选标签。

Select

当前值:(未选择)

API

属性

除下列说明外,其余常用能力(如 sizeclearablefilterableloadingcollapse-tagspopper-class 等)与 Virtualized Select 虚拟化选择器USelectV2 的同名属性一致,并透传给底层组件。

名称说明类型默认值
model-value / v-model绑定值;单选为 string,多选为 string[]string / array
multiple是否多选booleanfalse
disabled是否禁用(未设置时遵循表单禁用注入)boolean
clearable是否可清空booleantrue
filterable是否可搜索(建议保持开启,选项量较大)booleantrue
placeholder占位文本stringuniboot.select.placeholder
fit-input-width下拉宽度是否与输入框一致;为 false 时按选项文案自动加宽,便于阅读长标签boolean / numberfalse
height下拉面板高度number274
item-height每项高度number34
empty-values空值判定,参见 config-providerarray
value-on-clear清空时的返回值string / number / boolean / Function

事件

名称说明类型
update:model-value选中值变化时触发Function
change值变化且已确认时触发同上
remove-tag多选移除标签时触发Function
visible-change下拉展开/收起Function
focus聚焦Function
blur失焦Function
clear点击清空时触发Function

暴露

名称说明
selectRef内部 USelectV2 实例
focus聚焦内部输入
blur失焦内部输入

工具方法

若需自行拼装展示文案,可引用包内导出:

名称说明
formatUtcOffsetPart将 moment utcOffset 分钟数格式化为 ±HH:MM
formatUtcOffsetBracket格式化为 (UTC±HH:MM)
getIanaTimeZoneIds返回 IANA 时区标识列表(moment.tz.names()
getUtcOffsetMinutes用 moment 计算某时区在指定时刻相对 UTC 的偏移(分钟)
buildTimezoneOptionLabel生成 (UTC±HH:MM) IANA 完整选项文案