js拿到接口数据 处理成三级或者四级结构再进行渲染

这篇具有很好参考价值的文章主要介绍了js拿到接口数据 处理成三级或者四级结构再进行渲染。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景:接口的数据结构一层套一层 类似于这样
后端返回真实的数据如下:
js 数组数据3级,javascript,开发语言,ecmascript
这是个四级结构 需要渲染的也是四级 只需要拿到每个层级的name和第一个层级的ID
用最笨的方式来一层层解析 再进行渲染文章来源地址https://www.toymoban.com/news/detail-538981.html

// 处理渲染左侧菜单的渲染
const outinner = result.dbcFiles;
let allData = [];
for (let i in outinner) {
let str = Object.keys(outinner).toString();
var index1 = str.lastIndexOf('.');
var index2 = str.length;
if (index1 >= 1) {
    str = str.substring(index1, index2);
}
// 如果得到的后缀命为arxml需要四层的渲染结构
if (str === '.arxml') {
    let empty = true;
    let i1Item = {};
    i1Item.name = i;
    let i1List = [];
    for (let j in outinner[i]) {
        empty = false;
        let i2Item = {};
        let i2List = [];
        i1Item.dbcId = outinner[i].dbcId;
        i2Item.name = j;
        const temp = outinner[i][j] || {};
        if (temp.length > 0) {
            temp.map((i3) => {
                let i3Item = {};
                let i3List = [];
                i3Item.name = i3.name;
                i2List.push(i3Item);
                const signal = i3.signals || [];
                signal.map((i4) => {
                    let i4Item = {};
                    i4Item.label = i4.name;
                    i4Item.value = i4.name;
                    i3List.push(i4Item);
                });
                i3Item.i3List = i3List;
            });
            i2Item.i2List = i2List;
            i1List.push(i2Item);
        }
    }
    if (!empty) {
        i1Item.i1List = i1List;
        allData.push(i1Item);
    }
} else if (str === '.dbc') {
}
console.log(allData);

到了这里,关于js拿到接口数据 处理成三级或者四级结构再进行渲染的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 支付宝实现省市区三级联动my.multiLevelSelect(附带省市区js数据)

    可以供用户选择所在位置、喜好位置。可用于根据用户所选位置给用户提供该位置的特色美食,附近的电影院,周边环境等。 视频 支付宝省市区三级联动 图片 点击按钮button,让其弹框。用户可在弹框中选择位置,选中后让其显示在第三个view标签里 select 。 provinceAndCity.js数

    2024年02月09日
    浏览(98)
  • axios同一个接口,同时接收 文件 或者 数据

    1、前端代码  主要是: if (response.data instanceof Blob)  判断是否是 Blob 对象, 否则使用: response.data = JSON.parse(await (response.data).text()) 将后台返回的内容转成 文本 返回 主要是: responseType: \\\'blob\\\' 2、后端代码 需要注意的是: response.setHeader(\\\"Access-Control-Expose-Headers\\\", \\\"filename\\\"); 否则

    2024年02月12日
    浏览(54)
  • 关于前端或者postman传递Date数据测试接口报错

    错误: org.apache.ibatis.exceptions.PersistenceException: rn### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.Stringrn### Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String 解决: 将xml文件修改即可,然后前端或者postma

    2024年01月21日
    浏览(46)
  • [架构之路-236]:目标系统 - 纵向分层 - 数据库 - 数据库系统基础与概述:三阶段模型(概念模型、逻辑模型、物理模型)、三级模式结构(外模式、模式、内模式)

    目录 一、数据库设计阶段性模型:概念模型、逻辑模型、物理模型 1.1 概念模型(Conceptual Model)- 业务模型: 实体:entity 属性或特征: key键值/码: 域(Domain): 实体类型:entity type 实体集合: 联系: 1.2 逻辑模型(Logical Model)- 内存模型(最核心): 1.3 物理模型(Phys

    2024年02月02日
    浏览(58)
  • js处理扁平数组和树结构相互转换

    一、将扁平的数据转为树形结构 在 js中,可以使用递归算法将扁平的数据转换为树形结构。 扁平数据通常是一个带有 parentId 属性的数组,而树形结构通常是一个带有 children 属性的对象。 1、方法一 下面是一个简单的例子,演示如何将扁平数组转换为树形对象: 2、方法二

    2024年02月12日
    浏览(41)
  • Js写的二级联动和三级联动

    二级联动的实现 第一步 在HTML页面创建两个 select 下拉列表元素,并设置id为 ‘province’和id ‘city’ 第二步 在HTML创建js标签 用于写js代码,当然也可以创建一个js文本写js代码,我这里纯属是想偷懒所以直接在html页面使用script标签里面写,效果一样; 好了,不啰嗦,现在开始

    2024年02月06日
    浏览(34)
  • 【Node.js】一文带你开发博客项目之接口(处理请求、搭建开发环境、开发路由)

    个人简介 👀 个人主页: 前端杂货铺 🙋‍♂️ 学习方向: 主攻前端方向,也会涉及到服务端 📃 个人状态: 在校大学生一枚,已拿 offer(秋招) 🥇 推荐学习:🍍前端面试宝典 🍉Vue2 🍋Vue3 🍓Vue2Vue3项目实战 🥝Node.js 内容 参考链接 Node.js(一) 初识 Node.js DNS 解析,建

    2023年04月21日
    浏览(51)
  • uni-app根据腾讯地图接口三级联动组件

    有时候很懵逼,因为需要用到腾讯地图接口的三级联动,习惯问问度娘,结果出来了我几年前用JQ写的,好吧,还是自己撸一个现在用的吧 组件使用得是uni-popup弹窗,picker-view 滑动选择地址 访问腾讯地图接口使用的是 vue-jsonp  在main.js引入 组件address.vue 组件只需要填写你自

    2024年01月20日
    浏览(53)
  • vue3项目使用pdf.js插件实现:搜索高亮、修改pdf.js显示的页码、向pdf.js传值、控制搜索、处理接口文件流

    官网地址:http://mozilla.github.io/pdf.js/ 中文文档地址:https://gitcode.gitcode.host/docs-cn/pdf.js-docs-cn/print.html PDF.js是基于HTML5技术构建的,用于展示可移植文档格式的文件(PDF),它可以在现代浏览器中使用且无需安装任何第三方插件。 pdf.js主要包含两个库文件 pdf.js:负责API解析 pdf.wor

    2024年02月13日
    浏览(67)
  • 网络安全等级保护通用三级系统整体拓扑结构分值区间解析

    1.等保2.0 三级信息系统 70-80分 拓扑图:   2.设备清单:下一代防火墙(含IPS、AV)+综合日志审计系统+堡垒机+数据库审计系统+杀毒软件。 其他参考方案: 【接入边界NGFW】【必配】:融合防火墙安全策略、访问控制功能。解决安全区域边界要求,并开启AV模块功能;配置网络

    2024年02月06日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包