vue实现table表格里面数组多层嵌套取值

yizhihongxing

下面就是具体的步骤。

步骤

  1. 首先,在table组件中,需要在columns中定义表格的列信息,每个列的field属性对应每一行数据的字段名。
    javascript
    columns: [
    {label:'ID',field:'id'},
    {label:'用户名',field:'userName'},
    {label:'手机号码',field:'phone'},
    {label:'订单信息',field:'orderList'},
    ]
  2. 其次,在数据源中,需要给orderList字段赋值,这个字段是一个多层嵌套的数组。例如:
    javascript
    data: [
    {id:'1',userName:'张三',phone:'123456789',orderList:[
    {orderId:'1',price:'100',product:{'name':'苹果','color':'红色'}},
    {orderId:'2',price:'200',product:{'name':'香蕉','color':'黄色'}},
    ]},
    {id:'2',userName:'李四',phone:'987654321',orderList:[
    {orderId:'3',price:'300',product:{'name':'菠萝','color':'黄色'}},
    {orderId:'4',price:'400',product:{'name':'橙子','color':'橙色'}},
    ]}
    ]
  3. 然后,在表格中,可以通过formatter属性来对指定列的值进行格式化,这里就可以对orderList字段进行处理,返回需要展示的内容。
    javascript
    {label:'订单信息',field:'orderList',formatter:function(row,column,value){
    let orderHtml = '';
    for(let i=0;i<value.length;i++){
    orderHtml += `<p>订单编号:${value[i].orderId}</p>
    <p>订单价格:${value[i].price}</p>
    <p>商品名称:${value[i].product.name}</p>
    <p>商品颜色:${value[i].product.color}</p>`;
    }
    return orderHtml;
    }}
  4. 最后,就可以渲染出多层嵌套数组的数据了。

示例

示例1

如果数据源中的字段名为price,则在表格列中定义如下:
javascript
{label:'商品价格',field:'price'}

即可渲染出商品价格这一列的数据。

示例2

如果数据源中的字段名为product,需要展示该条数据中的颜色这一字段,则在表格列中定义如下:
javascript
{label:'商品颜色',field:'product',formatter:function(row,column,value){
return value.color;
}}

即可渲染出商品颜色这一列的数据。

至此,vue实现table表格里面数组多层嵌套取值的完整攻略结束。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue实现table表格里面数组多层嵌套取值 - Python技术站

(0)
上一篇 2023年5月29日
下一篇 2023年5月29日

相关文章

  • vue 使用print-js 打印渲染不出来问题

    下面是详细的攻略说明: 问题描述 Vue 使用 print-js 打印时,有时候会存在打印内容渲染不出来的问题。这种情况通常出现在需要打印的内容比较复杂,包含了 Vue 组件、异步请求等复杂元素。 解决方法 方法一:将需要打印的内容先进行渲染 需要将需要打印的内容先使用 Vue 的 $mount 方法进行渲染,然后将渲染后的 DOM 节点作为参数传递给 pr…

    Vue 2023年5月28日
    00
  • 脚手架(vue-cli)创建Vue项目的超详细过程记录

    脚手架(vue-cli)创建Vue项目的超详细过程记录 什么是 Vue-cli Vue-cli 是一个命令行工具,通过它可以快速创建新的 Vue 工程。Vue-cli 其实是一个基于 Node.js 的命令行工具,封装了 Vue.js 相关的项目创建流程,可以帮助我们快速的创建一个 Vue.js 项目。 安装 Vue-cli 在安装 Vue-cli 之前,首…

    Vue 2023年5月27日
    00
  • vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法

    问题描述: 在使用 vuex 进行数据管理时,如果存储了复杂参数例如对象数组等,当页面刷新时会发现数据丢失,这是因为 vuex 存储在内存中,刷新页面时内存被清空导致的。 解决方法: 我们可以通过以下步骤将 vuex 中的数据存储到本地存储中,以便在刷新页面后能够恢复数据。 安装 vuex-persistedstate shell npm install v…

    Vue 2023年5月28日
    00
  • Vue报错:TypeError: Cannot create property ‘xxxx‘ on的解决

    当 Vue 报出 “TypeError: Cannot create property ‘xxxx’ on” 类型的错误时,通常是由于在组件中调用了未定义的数据或方法。这种错误的解决方案可能有很多,我们可以从以下几个方面来处理: 检查组件的数据 首先,我们需要检查组件中使用的数据,确保其已在组件中初始化或定义。如果该数据是作为组件属性传入的,则需要确保传入的…

    Vue 2023年5月27日
    00
  • Vue2.0实现自适应分辨率

    下面我来详细讲解“Vue2.0实现自适应分辨率”的完整攻略。 1. 什么是自适应分辨率? 自适应分辨率指随着设备分辨率的变化而自动适应显示效果,实现在不同分辨率设备上呈现相同的视觉效果。 2. 如何实现自适应分辨率? 实现自适应分辨率的关键是通过响应式设计方法,在不同尺寸的设备上渲染相应的页面视图。Vue2.0框架提供了多种方法实现自适应分辨率,包括: 2.…

    Vue 2023年5月28日
    00
  • vue中优雅实现数字递增特效的详细过程

    下面我将详细讲解“Vue中优雅实现数字递增特效的详细过程”。 步骤一:安装插件 Vue中实现数字递增特效需要使用一个叫vue-countup-v2的插件,这个插件可以实现数字的缓动、格式化等功能。我们可以通过npm安装这个插件,在命令行中输入以下命令: npm install –save vue-countup-v2 步骤二:注册组件 在我们使用这个插件之…

    Vue 2023年5月28日
    00
  • vue快速入门基础知识教程

    以下是“vue快速入门基础知识教程”的完整攻略: 一、Vue.js是什么 Vue.js是一款轻量级、渐进式的JavaScript框架。它易于上手,具有更加简洁灵活的API,能够更加方便的实现前端页面的数据双向绑定、组件化开发、模块化开发等功能。 二、Vue.js的核心概念 数据双向绑定 Vue.js通过数据双向绑定,能够实现页面数据的实时更新。当Vue实例中…

    Vue 2023年5月27日
    00
  • vue 组件简介

    Vue 组件简介 什么是组件 在 Vue 中,组件是可复用的 Vue 实例,可接受向外部传递的参数(props)、被动对外部事件的触发和主动触发外部事件($emit)。组件从概念上看就像是 Vue 实例,不同之处在于组件可以接受的参数更加灵活且有一定规律。 在 Vue 中,一个组件本质上就是一个拥有预定义选项的 Vue 实例,并且可以通过Vue.compon…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部