vue 2.x 升级3.x, ant1.7升级ant 3.4 坑一

1 发现部分页面点击进去后会报以下错误,并且路由无法跳转,直接卡在当前报错页面。需要重新刷新才能显示,并且会大量报错。

报错:Uncaught (in promise ) TypeError: Cannot read properties of null (reading '')

通过排查发现,实际是ant的a-table导致的。

正常结构:

[
{"file1":'123',"f2":"23"},
{"file1":'1232',"f2":"5d"},
{"file1":'232323',"f2":"23233"}
]

如果是以下结构,并且有做处理,则建议把代码注释后刷新页面测试是否是此问题

[{"file1":'123',"f2":["12","32","45","67"]},
  {"file1":'1232',"f2":["12","32","45","67"]},
  {"file1":'232323', "f2":["12","32","45","67"]}
]

我的项目就是由于是此种数据结构,在 a-table 的代码更新后(采用template #bodycell ),此数据结构使用a-popover 进行列表渲染,会导致上面的报错问题。代码注释,修复后不再出现

2 显示嵌套结构的字段

更新后嵌套结构写法也更新了

[{"file1":'123',dataIndex
   "f2":{"f3":"sfasdfasfda",
                   "f4":"sfdasfd"}}
},
  {"file1":'1232',"f2":{"f3":"sfasdfasfda",
                   "f4":"sfdasfd"}}},
  {"file1":'232323', "f2":
                   {"f3":"sfasdfasfda",
                   "f4":"sfdasfd"}}
]

以前的写法:

dataIndex:f2.f3 然后会进行取值

更新后的写法:

dataIndex: ["f2","f3"]

3 data-range 显示异常英文

<a-range-picker
    :show-time="{ format: 'HH:mm' }"
    format="YYYY-MM-DD HH:mm"
    :placeholder="['开始时间', '结束时间']"
    :disabled-date="disabledDate"
    @ok="onRangeOk"
    allowClear
    :locale="locale"
/>
1 配置了locale  使用中英文,更改置后,仍然出现了英文的月份、星期
2 删node_modules 无用,删moment无用 ,此方式有利于减少无用包。
3 解决:在全局进行配置 app.vue 中进行配置解决问题
import dayjs from 'dayjs';
import 'dayjs/locale/zh-cn';
import locale from 'ant-design-vue/es/date-picker/locale/zh_CN';
dayjs.locale('zh-cn');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值