and-design-vue组件Date-Picker组件日期选择中英混合问题,或者一直在报date4.local is not a function

一、简介

在使用andv3时,明明在APP.vue文件配置了全局的语言-中文,但用到日期选择器等组件存在中英混合显示,或者纯英文的显示,与实际不符。以下是解决方案

二、解决方案

1、首先确然app.vue文件配置正确

<template>
  <a-config-provider :locale="zhCN">
    <router-view />
  </a-config-provider>
</template>

<script setup lang="ts">
import zhCN from 'ant-design-vue/lib/locale-provider/zh_CN';
import dayjs from 'dayjs';
import 'dayjs/locale/zh-cn';
dayjs.locale('zh-cn');
</script>

2、使用时

html代码:
<a-date-picker v-model:value="dateTest" valueFormat="YYYY-MM-DD"/>

js代码:
const dateTest = ref(dayjs().format('YYYY-MM-DD'))

3、引发中英文混合的原因可能是dayjs的版本存在冲突

使用 npm ls dayjs 查看

# npm ls dayjs 
或者
# yarn list dayjs

+-- ant-design-vue@3.2.20
| `-- dayjs@1.11.7 deduped
`-- dayjs@1.11.10

会发现andv里面自带的版本和我们下载的dayjs版本不一致,这可能会导致中英混合,可以卸载其中一个重新下载依赖,以求版本一致,

或者在package-lock.json文件中搜索dayjs的版本,会发现存在多个版本情况,需统一成一个版本,把锁的版本全部修改成统一的一个版本后,最好删除整个node_modules文件重新下载依赖,最后以确保所以得dayjs依赖都是一个版本

重启项目-查询是否修改成功

如还是现在中英混合,则可以在官网上查看是否符合其他情况

DatePicker组件中英文显示不准确 · Issue #38692 · ant-design/ant-design · GitHub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值