simplepicker日期时间选择器翻译月份时日期显示NAN问题咨询
Simplepicker 翻译月份出现NAN的解决方案
出现NAN的核心原因是修改月份配置时打乱了原有的月份数组索引映射,该插件内部是通过月份在数组中的索引计算对应日期数值的,而非匹配字符串内容。
正确的本地化操作步骤:
- 不要直接修改源码内的默认
months数组,通过初始化配置传入自定义本地化内容 - 自定义月份数组必须严格按照1月到12月的默认顺序填充,保证数组长度为12,不能调整顺序或增减条目
- 若需要同时自定义星期名称,也需按照「周日到周六」的默认顺序填充,避免索引错位
中文本地化的初始化示例代码:
const picker = new SimplePicker({ months: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'], // 星期翻译按默认的周日开头顺序填充 days: ['日', '一', '二', '三', '四', '五', '六'] })
如果之前修改过源码的默认配置,先将源码内的月份、星期数组恢复为初始状态,再用上述方法传入自定义配置,即可解决日期显示NAN的问题。目前已有开发者整理过该插件的中文本地化配置,可直接复用。
内容的提问来源于stack exchange,提问作者Luiz Jr
相关产品推荐
相关产品推荐

