尝试在 React 中进行排序和切片时,如何保留整个 geojson?

Posted

技术标签:

【中文标题】尝试在 React 中进行排序和切片时,如何保留整个 geojson?【英文标题】:How do I retain an entire geojson when attempting to sort and slice in React? 【发布时间】:2021-04-02 08:19:18 【问题描述】:

我正在尝试根据属性对 geojson 内的特征集合进行排序,然后根据该 geojson 对前 5 个特征进行切片。在这里的一些人的帮助下,我已经设置了基本的排序和切片,但我注意到,当我从排序和切片的geojson返回最终结果时,最终结果不是geojson,而只是特定数组的子集在geojson里面。

我将如何更改我的代码以保留原始的 geojson 架构,但只保留前 5 个排序功能?目的是映射较小的排序geojson结果。我在这里有一个编码示例:

https://codesandbox.io/s/slicing-geojson-qg1hb?file=/src/App.js

在控制台打印“原始geojson”和“最终结果”。

这是我在过滤器前后得到的结果:

过滤前:

original geojson: 
type: "FeatureCollection", features: Array(22), crs: Object

过滤后:

Final Result: 
(5) [Object, Object, Object, Object, Object]
0: Object
type: "Feature"
geometry: Object
properties: Object
1: Object
2: Object
3: Object
4: Object
​

我希望最终结果看起来与原始结果相同,只是按降序排序并仅保留前 5 个特征。

【问题讨论】:

从日志看来,您正在获取 geojson,不是吗? 【参考方案1】:

不确定这是否是问题。如果我正确地理解了你,那么原始 geoJSON 是什么,但将 features 数组替换为过滤后的数组。

您可以使用扩展运算符创建一个对象的副本,然后用您的新数组覆盖特征数组。

console.log("Final Result:", 
  ...this.state.geojson,
  features: rearrangedFeatures,
);

【讨论】:

以上是关于尝试在 React 中进行排序和切片时,如何保留整个 geojson?的主要内容,如果未能解决你的问题,请参考以下文章

将 as.vector 应用于矩阵切片时保留列名

尝试隐藏具有空属性的卡片时,如何消除 recyclerView 中的空白?

当尝试对 pandas 数据帧进行切片时,它会引发“ValueError('Lengths must match to compare')”

在 React 中使用选择和按钮对数组进行排序问题

ip报文发送时进行分片 在发送过程中丢失一个或是多个片时如何处理 以及如何分辨丢失与否?

REACT - 如何在 Mui-Datatables 中将逗号分隔符添加到整数值