小编Kau*_*ubh的帖子

Strapi 版本 4 扁平化复杂的响应结构

使用此函数可以展平从版本 4 上的 Strapi 返回的响应。帮助您摆脱数据和属性属性

这将为您提供与 Strapi 版本 3 相同的响应结构。这将帮助您轻松从版本 3 迁移到版本 4。

如何使用它?

  1. 导入文件。
  2. const flattnedData = flattenObj({...data})

注意:此处的数据是从 Strapi 版本 4 返回的响应。

export const flattenObj = (data) => {
const isObject = (data) =>
    Object.prototype.toString.call(data) === "[object Object]";
const isArray = (data) =>
    Object.prototype.toString.call(data) === "[object Array]";

const flatten = (data) => {
    if (!data.attributes) return data;

    return {
    id: data.id,
    ...data.attributes,
    };
};

if (isArray(data)) {
    return data.map((item) => flattenObj(item));
}

if (isObject(data)) {
    if (isArray(data.data)) { …
Run Code Online (Sandbox Code Playgroud)

json response graphql strapi apollo-client

5
推荐指数
1
解决办法
2481
查看次数

标签 统计

apollo-client ×1

graphql ×1

json ×1

response ×1

strapi ×1