首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

获取在vue js上显示一个或另一个对象数组的两个值。

在Vue.js上显示一个或另一个对象数组的两个值,可以通过使用条件渲染和计算属性来实现。

首先,你需要在Vue实例的data中定义两个对象数组,例如:

代码语言:txt
复制
data() {
  return {
    array1: [
      { id: 1, name: '对象1' },
      { id: 2, name: '对象2' },
      // ...
    ],
    array2: [
      { id: 1, value: '值1' },
      { id: 2, value: '值2' },
      // ...
    ],
    selectedId: 1, // 默认选中的对象的id
  };
},

接下来,在模板中使用v-if或v-show指令根据条件来渲染不同的对象数组的值。可以根据selectedId的值来判断要显示哪个数组的值,例如:

代码语言:txt
复制
<template>
  <div>
    <div v-if="selectedId === 1">
      <ul>
        <li v-for="item in array1" :key="item.id">{{ item.name }}</li>
      </ul>
    </div>
    <div v-else>
      <ul>
        <li v-for="item in array2" :key="item.id">{{ item.value }}</li>
      </ul>
    </div>
  </div>
</template>

最后,你可以通过添加事件处理程序来改变selectedId的值,从而切换显示不同的对象数组的值。例如,可以在按钮的点击事件中切换selectedId的值:

代码语言:txt
复制
<template>
  <div>
    <button @click="selectedId = 1">显示对象数组1</button>
    <button @click="selectedId = 2">显示对象数组2</button>
    <!-- 根据selectedId的值切换显示的对象数组的值 -->
    <div v-if="selectedId === 1">
      <ul>
        <li v-for="item in array1" :key="item.id">{{ item.name }}</li>
      </ul>
    </div>
    <div v-else>
      <ul>
        <li v-for="item in array2" :key="item.id">{{ item.value }}</li>
      </ul>
    </div>
  </div>
</template>

这样,根据selectedId的值的不同,就可以在Vue.js上显示一个或另一个对象数组的两个值。

关于Vue.js的更多信息和使用方法,你可以参考腾讯云的产品介绍链接地址:Vue.js产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何使用Vue.js和Axios来显示API中数据

介绍 Vue.js一个用于构建用户界面的前端JavaScript框架。 它设计从头开始逐步采用,并与其他图书馆现有项目完美集成。...Vue.js非常适合使用这些类型API。 本教程中,您将创建一个使用Cryptocompare APIVue应用程序来显示两个主要加密货币的当前价格:比特币和Etherium。...浏览器中打开此文件。 您将在屏幕看到以下输出,其中显示模拟数据: 我们以美元显示价格。 要以额外货币(例如欧元)显示它,我们将在数据模型中添加另一个键值对,并在标记中添加另一列。...第4步 - 从API获取数据 现在是时候用来自cryptocompare API实时数据替换我们模拟数据,以美元和欧元形式在网页显示比特币和以太坊价格。...为了提出请求,我们将Vuemounted()函数与Axios库GET函数结合使用来获取数据并将其存储在数据模型results数组中。

8.8K20

Vue2学习计划五:v-on、v-model、v-if、v-for和v-show

调用时不加小括号,Vue会默认将浏览器产生event事件当作实参传入 调用时只有小括号没有实参,此时方法内部形参为undefined 方法定义时有两个参数,一个是数据,另一个是浏览器产生事件对象...调用时不加小括号,Vue会默认将浏览器产生event事件当作第一个实参传入,第二个为undefined 调用时只有小括号没有实参,方法内部两个形参都为undefined 调用时只有一个实参...,方法内部另一个形参为undefined 注意: 调用时,要传入浏览器事件对象,使用$event 方法定义时有参数,调用时不加小括号,默认第一个实参为浏览器事件对象 方法定义时有参数,调用时没有传入...v-model其实是一个语法糖,完全可以自己实现,它本质是包含两个操作: v-bind绑定input元素value v-on指令给当前元素绑定input事件 ...一般用于遍历数组对象 遍历数组时,分为两种情况,需要索引和不需要索引

4.2K20
  • vue入门教程(一)「建议收藏」

    computed计算属性是用来声明式描述一个依赖了其它,当所依赖或者变量改变时,计算属性也会跟着改变; computed根据一个现有数据去生成一个新数据,并且这两个数据会永久建立关系...,还会建立缓存,当无关数据改变时候,不会重新计算而是直接使用缓存中; 我们可以使用 methods 来替代 computed,效果两个都是一样,但是 computed 是基于它依赖缓存...Vue.js v-bind 处理 class 和 style 时, 专门增强了它。表达式结果类型除了字符串之外,还可以是对象数组。.../排序后结果 有时,我们想要显示一个数组经过过滤排序后版本,而不实际变更重置原始数据。...在这种情况下,可以创建一个计算属性,来返回过滤排序后数组。 我们实现一个案例:展示姓名和年龄数组列表。同时可以按照姓名筛选和年龄排序。

    1.1K20

    最新Web前端面试题精选大全及答案「建议收藏」

    如果让原型对象等于另一个原型对象实例,此时原型对象将包含一个指向另一个原型指针(__proto__),另一个原型也包含着一个指向另一个构造函数指针(constructor)。...Less既可以客户端运行,可以服务端运行(需要借助node) Js中.call()与.apply()区别 apply:调用一个对象一个方法,用另一个对象替换当前对象。...而不同之处在于传递参数,apply最多只能有两个参数——新this对象一个数组argArray,如果arg不是数组则会报错 相同点:两个方法产生作用是完全一样。...,那么会对新老节点进行对比,比较两者key是否相同,进行调换位置删除操作 8.什么是计算属性 计算属性是用来声明式描述一个依赖了其他,当它依赖这个发生改变时,就更新DOM 当在模板中把数据绑定到一个计算属性时...具名插槽和匿名插槽,作用域插槽,说白了就是组件属性,可以组件元素内使用, 可以父组件中使用slot-scope从子组件获取数据 38.Watch请简述 Watch作用是监控一个变化,并调用因为变化需要执行方法

    1.5K20

    前端攻坚战

    Vue.js可以作为一个js库来使用,也可以用它全套工具来构建系统界面,这些可以根据项目的需要灵活选择,所以说,Vue.js是一套构建用户界面的渐进式框架。...Vue核心库只关注视图层,Vue目标是通过尽可能简单 API 实现响应数据绑定,在这一点Vue.js类似于后台模板语言。...当这些属性发生变化,视图将会匹配到更新之后。上面的例子,通过一个方法,改变 data 对象属性,使视图中随之变化,演示了响应式。...下面举两个例子进行演示即可: 元素 --> 是否显示这一段 <!...因为它们属性可以是表达式,vue.js在这一块做了增强。表达式结果除了是字符串之外,还可以是对象或者数组

    1.2K10

    vue2.0知识点汇总

    angular核心: 模块化 双向数据绑定(脏检测:一个数组($watch),性能弱) 开发一个登陆模块,登陆需要显示头部、底部、中部 组件:组合起来一个部件(头部、底部、中部) 细分代码...一个样式: 返回字符串(三元表达式和 key和样式对象清单) 多个样式: 返回对象(样式做key,truefalse做) <div v-bind...绑定事件 另一个组件引入统一个vuebus,来$emit(‘事件名’,prop1, prop2) 触发事件 vue高级 vue过滤器 获取dom元素 mint-ui vue组件使用 组件间通信 vue-router...; 获取DOM元素 前端框架就是为了减少dom操作,特定情况下也提供了操作方式 指定元素,添加ref=”名称” 获取地方加入 this....$refs.名称 如果ref放在了原生DOM元素获取数据就是元素DOM对象 如果ref放在组件对象获取就是组件对象 获取子组件DOM对象,通过this.refs.sub.refs.sub.el

    6.6K70

    Vue之组件化(三)

    cpn2> 1.2、为何需要父子组件通信 每个组件数据都存放在自己data函数中,不可以直接使用其他组件Vue实例(根组件)中data数据。...那每一个组件中数据都通过发送网络请求获取,甚至连蓝色框用来显示物品详情小组件也要发送网络请求获取动态数据,这会让网络请求压力巨增,所以这种获取数据方式显然是不可能。...举例: 父组件通过$children方法直接获取两个子组件对象 ...3.2、$children缺点 利用$children获取数组类型,访问其中组件必须通过索引。...当子组件过多时,往往不能确定他索引,所以引进了新父访子方式$refs 3.3、直接父访子缺点 虽然可以通过$children方式直接获取子组件对象,进而获取子组件中方法和数据,但是一个组件中直接获取另一个组件去操作数据和方法方式

    56420

    Vue2向Vue3过渡,持续记录

    (开发版,代码进行了压缩) 2.global 这四个版本都可以浏览器中直接通过scripts标签导入,导入之后会增加一个全局Vue对象 vue.global.js(完整版,包含编译器和运行时) vue.global.prod.js...当撰写包裹一个目标元素另一个组件组件时,这可能不会总是符合预期行为。通过设置 inheritAttrs 到 false,这些默认行为将会被去掉。...也对,这么明显问题,vue不可能考虑不到,正经解释一下: 循环一个元素是对象数组,既然是对象那就是引用,然后对象是响应式,然后基于vue响应式原理。...vue计算属性返回一个对象、或者数组时候,修改这个对象属性时候不会触发set;如果是基础数据类型(返回数组对象基本数据类型属性),才会触发set; 36.使用异步组件?.../Foo.vue') 提示 vue简单小组件就别用异步组件了,会导致加载闪烁(网页显示,然后等待网络加载,才显示) 37.关于vue3中v-model 原生html元素使用

    5.9K40

    MVVM之Vue源码分析

    本系列文章将会围绕Vue框架中涉及到技术进行一系列分析,本文中: 我会首先介绍几个涉及JS方面的知识,然后着重对于实现一个MVVM框架三大基本原理(即数据代理、模板解析、数据绑定)进行介绍,接下来几篇文章中会对涉及到其他技术...: 首先这两个方法都是接收一个数组作为参数,但是从执行效率讲: ?...Object.defineProperty: 会直接在一个对象定义一个新属性,或者修改一个对象现有属性,并返回这个对象....数据绑定: 一般来讲,数据绑定包括两个方面:初始化显示和更新显示.所谓数据绑定,是指一旦更新了data中某个属性数据,所有页面上直接使用间接使用此属性节点都会更新,实现这个功能效果就是数据劫持....通俗点讲,当页面初始化时候,通过get方法会建立watcher与dep关系,函数调用栈如下: ? Observer.js中,有一个subs[],里面保存是n个watcher数组容器.

    85730

    2022年最新前端面试题(大前端时代来临卷起来吧小伙子们..持续维护走到哪记到哪)

    堆: 是一种非连续树形储存数据结构,具有队列优先,先进先出; 每个节点有一个,整棵树是经过排序。特点是根结点最小(最大),且根结点两个子树也是一个堆。...赋是具体 引用数据类型传是地址,一个另一个跟着变 js数据类型转换 JavaScript中类型转换有三种情况: 转换为数字(调用Number(),parseInt(),parseFloat...1.浅拷贝: 将原对象数组引用直接赋给新对象,新数组,新对象只是对原对象一个引用,而不复制对象本身,新旧对象还是共享同一块内存 如果属性是一个基本数据类型,拷贝就是基本类型,如果属性是引用类型...怎么获取传过来 router 目录下 index.js 文件中,对 path 属性加上 /:id,使用 route 对象 params.id 获取 Vue-router共有几种模式?...,我们router.js文件中定义路由里,将需要登陆权限页面加上meta属性,对象形式,然后对象中自定义一个属性,属性就是一个Boolean,这时候main.js文件全局钩子函数中进行判断

    3.4K10

    【编程鹿】学Vue.js这一篇就够了「万字学会|通俗易懂」上篇

    应用都是通过用 Vue 函数创建一个 Vue 实例开始: var vm = new Vue({ // 选项 }) 构造函数中传入一个对象,并且在对象中声明各种Vue需要数据和方法,包括:...例如 1 + 1,没有结果表达式不允许使用,如:var a = 1 + 1; 可以直接获取Vue实例中定义数据函数 示例: <!...Vue对class属性进行了特殊处理,可以接收数组对象格式 对象语法:可以传给 :class 一个对象,以动态地切换 class: <div :class="{ red: true,blue:false...bool} red和blue<em>两个</em>样式<em>的</em><em>值</em>分别是bool和!bool,也就是说这<em>两个</em>样式<em>的</em>生效标记恰好相反,<em>一个</em>生效,<em>另一个</em>失效。...通俗<em>的</em>来说:过滤器是对即将<em>显示</em><em>的</em>数据做进一步<em>的</em>筛选处理,然后进行<em>显示</em>,值得注意<em>的</em>是过滤器并没有改变原来<em>的</em>数据,只是<em>在</em>原数据<em>的</em>基础<em>上</em>产生新<em>的</em>数据。

    12.4K20

    理解vuescope使用

    我们都知道vue slot插槽可以传递任何属性html元素,但是调用组件页面中我们可以使用 template scope="props"来获取插槽属性获取一个对象。...注意:scope="它可以取任意字符串"; 上面已经说了 scope获取一个对象,是什么意思呢?我们先来看一个简单demo就可以明白了~ 如下模板页面: <!...tb-list 这么一个组件,然后给 tb-list 传递了一个data属性;该一个数组,如下: data: [ { name: 'kongzhi1', age: '29...$index}} 最后模板使用scope来接收slot中属性;因此scope是如下一个对象: {"row":{"name":"kongzhi1...:"woman"},"$index":1} 从上面返回scope属性我们可以看到,scope返回是slot标签上返回所有属性,并且是一个对象形式保存起来,该slot有两个属性,一个是row

    1.4K41

    滴滴前端常考vue面试题_2023-02-28

    uname=' + jsmes) 3)获取参数 通过$route.query 获取传递 Class 与 Style 如何动态绑定 Class 可以通过对象语法和数组语法进行动态绑定 对象语法: <div...ref主要解决原始响应式问题 ref返回响应式数据JS中使用需要加上.value才能访问其视图中使用会自动脱ref,不需要.value;ref可以接收对象数组等非原始,但内部依然是reactive...}); }); 简单来说就是,重写了数组那些原生方法,首先获取到这个数组ob,也就是它Observer对象,如果有新,就调用observeArray继续对新观察变化(也就是通过target...extends 主要是为了便于扩展单文件组件,接收一个对象构造函数。...Vue 2.x 里,是通过 递归 + 遍历 data 对象来实现对数据监控,如果属性也是对象那么需要深度遍历,显然如果能劫持一个完整对象是才是更好选择。

    84530

    理想汽车前端面试题详解,面试经验分享

    splice() - 通过删除替换现有元素添加新元素来修改数组内容。 fill() - 用一个固定填充数组中从起始索引到终止索引内全部元素。...copyWithin() - 将数组内部一部分浅复制到同一数组另一个位置。 四、深拷贝深拷贝:将对象完全复制一份,新对象和原对象两个独立对象,修改一个对象属性不会影响另一个对象属性。...更好响应式系统:Vue.js 3.0对响应式系统进行了重写,使用了Proxy代理对象来实现数据变化监听和依赖追踪。...这些改进使得Vue.js 3.0相对于2.0性能方面有显著提升。 体积优化:Vue.js 3.0采用了模块化设计,可以实现按需引入,只加载需要部分,从而减小应用体积。...TypeScript支持:Vue.js 3.0对TypeScript提供了更好支持,包括提供了更好类型推断、增强类型检查等功能,使得使用TypeScript开发Vue.js应用更加方便和安全。

    8300

    一个合格初级前端工程师需要掌握模块笔记

    浮动元素依然按照其普通流位置出现,然后尽可能根据设置浮动方向向左或者向右浮动,直到浮动元素外边缘遇到包含框或者另一个浮动元素为止,且允许文本和内联元素环绕它。...对象(Object) js中内置了如下对象: Object 是所有JS对象超类(基类),JS所有对象都是继承自Object对象 Array 数组对象 定义数组属性和方法 Number...indexOf 数组可以通过indexOf()来搜索一个指定元素位置,如未找到返回 -1 concat concat()方法把当前 数组另一个 数组连接起来,并返回一个 数组 var newArr...把所有匹配元素追加到另一个指定元素集合中 prepend() 向每个匹配元素内部前置内容 prependTo() 把所有匹配元素前置到另一个、指定元素集合中 外部插入 after() 每个匹配元素之后插入内容...before() 每个匹配元素之前插入内容 insertAfter() 把所有匹配元素插入到另一个、指定元素集合后面 insertBefore() 把所有匹配元素插入到另一个、指定元素集合前面

    3.7K10

    :第二章 - 常见指令使用

    Vue过程中,当我们引入了 vue.js 这个文件之后,浏览器内存中就存在了一个 vue 对象,此时,我们就可以通过构造函数方式创建出一个 vue 对象实例,后面就可以对这个实例进行操作。   ...这里可以使用 window.vm 获取vue 实例,则是因为我们之前引入 vue.js 后,会自动浏览器内存中创建 vue 对象,我们通过构造函数创建 vue 实例也就存在与浏览器内存里了。...在下面的代码中,我们通过绑定一个按钮点击事件,去修改 flag ,从而做到对于两个 h3 标签显示与否控制。...我们可以看到,flag 初始为 true,此时,两个 h3 标签都可以显示出来,当我们点击切换按钮后,两个 h3 都隐藏了,不同是,我们可以看到,对于使用 v-if 指令控制 h3 标签,当表达式为...使用 v-for 指令时,我们可以对数组对象、数字、字符串进行循环,获取到源数据一个

    1.2K10

    2021前端高级面试题_2021前端面试题目100及最佳答案

    4、简述computed和watch使用场景 computed: 不支持缓存,数据变,直接会触发相应操作; watch支持异步; 监听函数接收两个参数,第一个参数是最新;第二个参数是输入之前...怎么获取传过来?) 6、$route 和 $router 区别 8、vue-router 有哪几种导航钩子?..., el还没有,也没有挂载dom beforeMount: 在这里vue实例元素el和数据对象都有了,只不过挂载之前还是虚拟dom节点 mounted: vue实例已经挂在到真实dom,可以通过对...,bind不会自动执行,需要手动调用 call、bind与apply区别:前两个都有无数个参数,apply只有两个参数,而且第二个参数为数组 16,vue路由两种模式 1.hash模式 特点:url...,需要进行状态提升,即将状态提升到他们最近 祖先组件中,触发父组件状态变更,从而影响另一个组件显示

    80120

    热乎~前端面试题(昨天)

    vue2: • Vue2 中注意使用 Object.defineProperty() 方法来实现响应式,它为对象一个属性都定义了一个 getter 和 setter,当数据发生变化时,会触发相应更新操作...• 同时增加了 ref 和 computed 这两个响应式 API,让我们可更灵活管理组件内数据状态。 2.Vue是如何监听数组变化? • Vue 通过把数组原生方法重写了 1....• 通常情况下,vue 通过对每一个键设置 getter/setter 来实现响应式,没有对数组每个键设置响应式,而是直接对递归设置响应式。主要考虑到性能问题。...set方法中,我们实现了自己逻辑,例如在属性变化时强制更新视图。 接下来,我们页面中展示了data中一个属性message,并提供了一个按钮,点击按钮时会修改message属性。...,如何根据另一个对象数组另一个去重?

    11910
    领券