Vue中map()的用法案例

目录
  • 前言
  • 一、map()是什么?
  • 二、使用
    • 1.案例一:取给定数组的某一字段组成新数组
    • 2.案例二:取给定数组的某些字段重命名并组成新数组
  • 三、总结

前言

记录vue常用得map(),喜欢在前台处理数据,但是map()用得也不熟悉。这两天频繁用,也没看到好的参考样例(可能好的我没找到)。就自己试着写琢磨出来,自己记录一下。省的以后用再去翻找(自己脑子记不住哇 T_T ).

一、map()是什么?

其实我也不清楚,会用就好啦。数组操作是前端最重要的数据操作,构造数组数据,重构解析数组又是数组操作中很常见的。下面我将写出我得心得和map()在Vue项目中的使用。

二、使用

1.案例一:取给定数组的某一字段组成新数组

后台传来的数据 data(json):

[   //data的数据
    {"txt":"09:00-12:00","codId":"1","flgDel":"0","id":1},
    {"txt":"13:00-16:00","codId":"1","flgDel":"0","id":2},
    {"txt":"18:00-20:00","codId":"1","flgDel":"0","id":3}
]

前台使用要为:

['09:00-12:00', '13:00-16:00', '18:00-20:00']

用到map()只需一行(我同学想要用到for循环遍历出来)我就觉得很麻烦,只记得之前貌似用过map()。快捷方法出来了学去吧。

let time = data.map(item =>(item.txt))
console.log(time)
//控制台输出如下
//['09:00-12:00', '13:00-16:00', '18:00-20:00']

2.案例二:取给定数组的某些字段重命名并组成新数组

新的接口传来data(json):

[  //新data数据
{"txt":"拜访","flgDel":"0","id":1},
{"txt":"面试","flgDel":"0","id":2},
{"txt":"其他","flgDel":"0","id":3}
]

前台使用数组结构:

[{ name: '拜访' }, { name: '面试' }, { name: '其他' }]
//这里看到相比于案例一有字段了,还新命名了
//只需一行map()
let resion = data.map(item =>({name: item.txt}))
console.log(resion)
//控制台输出
//[{ name: '拜访' }, { name: '面试' }, { name: '其他' }]

当然,或许你要的这样 :

[{ name: '拜访',id:'1' }, { name: '面试',id:'2' }, { name: '其他',id:'3'}]
//要两个字段的数据
let resion2 = data.map(item =>({name: item.txt, id: item.id}))
console.log(resion2)
//控制台输出
//[{ name: '拜访',id:'1' }, { name: '面试',id:'2' }, { name: '其他',id:'3'}]

又或许你想要这样 :

[{ name: '拜访1' }, { name: '面试2' }, { name: '其他3'}]
//要拼接的数据
let resion3 = data.map(item =>({name: item.txt + item.id}))
console.log(resion3)
//控制台输出
//[{ name: '拜访1' }, { name: '面试2' }, { name: '其他3'}]
//这数据看着好奇怪,没这么用的。我只想说map()可这么用,还有更多等我们一起探索

三、总结

方便太多了同学都来向我请教了,写的明白易懂吧相信也会用了(小白教程)。

以上就是今天要记录的内容,本文仅仅简单介绍了map()在vue中数据处理的一点皮毛,而map()提供了大量能使我们快速便捷地处理数据的函数和方法还等待我去使用发现

到此这篇关于Vue中map()用法的文章就介绍到这了,更多相关Vue map()用法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Vue中map()的用法案例

    目录 前言 一.map()是什么? 二.使用 1.案例一:取给定数组的某一字段组成新数组 2.案例二:取给定数组的某些字段重命名并组成新数组 三.总结 前言 记录vue常用得map(),喜欢在前台处理数据,但是map()用得也不熟悉.这两天频繁用,也没看到好的参考样例(可能好的我没找到).就自己试着写琢磨出来,自己记录一下.省的以后用再去翻找(自己脑子记不住哇 T_T ). 一.map()是什么? 其实我也不清楚,会用就好啦.数组操作是前端最重要的数据操作,构造数组数据,重构解析数组又是数组操作

  • vue中appear的用法

    关于appear的用法和enter的用法相似,它只是在第一次渲染的时候才会起作用.看完整的代码: 别忘了引用vue.js <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>初始渲染的过渡</title> <script src="vue.js"></script>

  • jQuery中map()方法用法实例

    本文实例讲述了jQuery中map()方法用法.分享给大家供大家参考.具体分析如下: 此方法将一组元素转换成其他数组(不论是否是元素数组). 可以用这个函数来建立一个列表,不论是值.属性还是CSS样式,或者其他特别形式. 语法结构: 复制代码 代码如下: $("selector").map(function) 参数列表: 参数 描述 function 给每个元素执行的函数 实例代码: 复制代码 代码如下: <!DOCTYPE html> <html> <h

  • 关于vue中 $emit的用法详解

    1.父组件可以使用 props 把数据传给子组件. 2.子组件可以使用 $emit 触发父组件的自定义事件. vm.$emit( event, arg ) //触发当前实例上的事件 vm.$on( event, fn );//监听event事件后运行 fn: 例如:子组件: <template> <div class="train-city"> <span @click='select(`大连`)'>大连</span> </div&

  • Vue 中mixin 的用法详解

    说下我对vue中mixin的一点理解 vue中提供了一种混合机制--mixins,用来更高效的实现组件内容的复用.最开始我一度认为这个和组件好像没啥区别..后来发现错了.下面我们来看看mixins和普通情况下引入组件有什么区别? 组件在引用之后相当于在父组件内开辟了一块单独的空间,来根据父组件props过来的值进行相应的操作,单本质上两者还是泾渭分明,相对独立. 而mixins则是在引入组件之后,则是将组件内部的内容如data等方法.method等属性与父组件相应内容进行合并.相当于在引入后,父

  • vue中keep-alive的用法及问题描述

    1.keep-alive的作用以及好处 在做电商有关的项目中,当我们第一次进入列表页需要请求一下数据,当我从列表页进入详情页,详情页不缓存也需要请求下数据,然后返回列表页,这时候我们使用keep-alive来缓存组件,防止二次渲染,这样会大大的节省性能. 2.keep-alive的基本用法 在app.vue中 <!-- 缓存所有的页面 --> <keep-alive> <router-view v-if="$route.meta.keep_alive"&g

  • Vue中$refs的用法详解

    说明:vm.$refs 一个对象,持有已注册过 ref 的所有子组件(或HTML元素) 使用:在 HTML元素 中,添加ref属性,然后在JS中通过vm.$refs.属性来获取 注意:如果获取的是一个子组件,那么通过ref就能获取到子组件中的data和methods <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>D

  • vue中$refs的用法及作用详解

    一般来讲,获取DOM元素,需document.querySelector(".input1")获取这个dom节点,然后在获取input1的值. 但是用ref绑定之后,我们就不需要在获取dom节点了,直接在上面的input上绑定input1,然后$refs里面调用就行. 然后在javascript里面这样调用:this.$refs.input1 这样就可以减少获取dom节点的消耗了 用法如下: HTML: <div id="app"> <input

  • vue中watch的用法汇总

    在vue中,使用watch来响应数据的变化.watch的用法大致有三种. 1. 常用用法 <input type="text" v-model="name"/> new Vue({ el: '#app', data: { name: '咸鱼' }, watch: { name(newVal,oldVal) { // ... } } }) 直接写一个监听处理函数,当每次监听到 name 值发生改变时,执行函数.也可以在所监听的数据后面直接加字符串形式的方法

  • vue中activated的用法

    keep-alive <keep-alive>包裹动态组件的时候,会缓存不活动的组件实例,而不是摧毁他们.其是一个抽象的组件,自身不会渲染一个DOM元素,也不会出现在父组件链中. 说白了被<keep-alive>包裹的组件其会被缓存 废话不多说直接上例子. 我们现在创建两个子组件conpoment1,compoment2,其内容如下 <template> <div class="wrapper"> <ul class="c

随机推荐