先上问题报错提示信息:TypeError: rawData.some is not a function。
再上技术前台antd+react,后台go,数据json格式。
解决方法:dataSource存储的数据是数组,当dataSource赋值的数据不是数组时就会报出这样的错误。所以我们要继续向内部取到数组层。我的问题是后台没有给数组的类型,而是对象类型。为了统一数据,就让后台改成了数组。大家可以看看我的数据,第一个perms是数组,dataSource赋值要取到此处,这是正确的格式。第二个result对应的数据不是数组类型,所以导致我的报错,这里要保持前后台统一。这些都属于新手常见错误,记录一下,不喜勿喷,后面有详细解析。
我在网上查了很多,说到了重点,但是大多数解决方法是修改依赖文件,我是跟着我老师一起做的项目,他说过轻易不去改依赖,除非自己解决不了代码的问题,所以我一般第一时间都是看自己代码问题。原因很简单antd的Table组件在渲染数据时使用dataSource存储后台发送的数据。官网api文档说明了dataSource类型是数据数组。那么后台给的数据是json,那我们也要取到对应的数组字段的关键字。问题一般就是没有取到对应的数组字段的关键字,然后就是看后台给的是否为数组。最后没办法再去修改依赖。