Vue中使用v-for不能用index作为key值

2023-05-16

今天在改一个项目,有一个<el-tabs>的列表循环,需要根据权限控制列表项的显示,代码如下:

<template>
	<el-tabs v-model="activeName" @tab-click="handleClick">
	  	<el-tab-pane v-for="(item, index) in accessTabs" 
	  				 :key="index"
	  				 :label="item.label"
	  				 :name="item.name">
	  	</el-tab-pane>
	</el-tabs>
</template>

<script>
export default {
  data() {
    return {
    	activeName: "base",
		tabs: [
			{
				label: "基本设置",
				name: "base"
			},
			{
				label: "应用设置",
				name: "app"
			},
			{
				label: "标签设置",
				name: "tag"
			},
			{
				label: "成员管理",
				name: "role"
			},
			{
				label: "高级设置",
				name: "advanced"
			}
		]
    }
  },
  computed: {
    accessTabs() {
		return this.tabs.filter((item, index) => {
			if(this.$userRoleAccess == 1) {
				return true
			} else {
				return index == 2 || index == 3
			}
		})
	}
  }
}
</script>

上面代码的逻辑就是,当用户为管理员身份,也就是$userRoleAccess = 1的时候,可以访问全部5个tab;当用户为普通成员身份,也就是$userRoleAccess = 0的时候,只能访问“标签设置”和“成员管理”。

在测试的时候,先访问了一个身份为管理员的项目,一切正常,接着访问了另一个身份为普通成员的项目,结果出现问题了,控制台报错:

[Vue warn]: Duplicate keys detected

将上面的:key="index"改为:key="item.label",经过测试没有报错。

key值可以接受Number或者String类型,并且应使用唯一索引。

参考:
vue中使用v-for时为什么不能用index作为key?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue中使用v-for不能用index作为key值 的相关文章

  • 我应该如何创建我的 DES 密钥?为什么 7 个字符的字符串不够?

    我在理解密码学中的密钥长度要求方面遇到了一些困难 我目前正在使用 DES 我认为它是 56 位 现在 通过将 8 个字符的密码转换为byte 我的密码学有效 如果我使用 7 位密码 则不会 现在 如果我错了 请原谅我 但这是因为 ASCII
  • 为什么使用keys()而不是%{..}会发生自动生存?

    这是我发现的一个微妙之处keys perl e use warnings use strict my d ab gt 1 my e keys d gt cd perl e use warnings use strict my d ab gt
  • C# - 检查是否按下了特定键

    我试图检查是否按下了某个键 但收到以下错误消息 错误 1 当前上下文中不存在名称 键盘 错误2 当前上下文中不存在名称 Key 你能告诉我如何修复它吗 public void Main while true if Keyboard IsKe
  • NLTK python 错误:“TypeError:‘dict_keys’对象不可下标”

    我正在按照课堂作业的说明进行操作 并且应该在文本文件中查找最常用的 200 个单词 这是代码的最后一部分 fdist1 FreqDist NSmyText vocab fdist1 keys vocab 200 但是当我在 vocab 20
  • 将字符转换为键

    我有一个特殊的字符 我想将其转换为键 我目前正在使用这个 Keys k Keys 在调试时 我发现 k 等于 L按钮 R按钮 M按钮 返回 空间类型 System Windows Forms Keys k 的键码应该是 111 注意 该代码
  • WPF 中 DataTemplate 中的 x:Key、x:Name 和 x:UID 有什么区别?

    我正在尝试在 WPF 中创建动态选项卡 并且正在尝试编写一个仅适用于某些选项卡项目的内容模板 我希望能够为内容模板创建一个标识符 以便我可以在后面的代码中引用它 这样我就可以有选择地将它应用于单个 TabControl 中的某些选项卡 但是
  • 如何通过 RSA 生成唯一的公钥和私钥

    我正在构建一个自定义购物车 其中 CC 编号和到期日期将存储在数据库中直至处理 然后删除 我需要加密这些数据 显然 我想使用 RSACryptoServiceProvider 类 这是我创建密钥的代码 public static void
  • 如何选择 jq 中作为变量提供的键的值?

    如果这是输入 a key 2 another key 100 one more key 4 2 通过提供键的名称作为变量来选择这些键的值的最佳方法是什么 理想情况下 我正在寻找类似的东西 a key as key key 但这会导致语法错误
  • 有效计算 JavaScript 中对象的键/属性的数量

    这个问题几乎与如何有效地计算 JavaScript 中对象的键 属性的数量 https stackoverflow com questions 126100 how to efficiently count the number of ke
  • 在 flutter 中更新我的应用程序时,您的 Android App Bundle 使用错误的密钥进行签名错误

    我只是不太明白为什么这种情况发生在我身上 我遵循了所有步骤https flutter dev docs deployment android https flutter dev docs deployment android上传我的第一个版
  • EntityType 未定义键

    我正在创建一个应用程序 用户通过 Facebook oAuth 登录 然后设置歌曲列表 我收到以下错误消息 BandFinderCsharp Models IdentityUserLogin EntityType IdentityUserL
  • PHP 对齐数组键值

    我在 Google 上搜索了两天 并尝试查看 PHP 手册 但我仍然不记得那个对齐 PHP 数组键值的函数 我正在寻找的只是需要这个的函数 Array 0 gt 1 3 gt 2 4 gt 3 7 gt 4 9 gt 5 并将其转换成这样
  • 在 Spring Boot 中转义 Yaml 中的 Map 键中的点

    我有以下 yml 配置 foo bar com a b baz com a c 通过以下类 Spring 尝试使用键 bar 和 baz 注入映射 将点视为分隔符 public class JavaBean private Map
  • 将两个键与 std::map 一起使用的最佳方法是什么?

    我有一个std map我用来存储 x 和 y 坐标的值 我的数据非常稀疏 所以我不想使用数组或向量 这会导致内存的大量浪费 我的数据范围从 250000到250000 但我最多只有几千个点 目前我正在创建一个std string与两个坐标
  • 返回 dynamodb 中具有最大排序键的项目

    我正在使用 python 脚本访问 AWS 中的 dynamodb 数据库 我有一个带有哈希键和排序键的表 对于给定的哈希键 我想找到具有小于某个值的最大排序键的项目 我怎样才能做到这一点 或者 有没有办法从给定的键查找前一项 I am n
  • Python - 查找字典中最长(最多单词)的键

    有没有一种方法可以快速查询字典对象以找到单词最多的键 所有键都是字符串类型 即 如果具有最大键的项目有五个单词 这是最大的键 3 我如何快速查询字典并返回 int 5 最好的 乔治娜 这将为您提供密钥 max d key lambda x
  • 在网站上以多种形式输入密钥

    我有一个有两种表格的网站 一个用于搜索 另一个用于登录 当我使用回车键提交时 搜索总是被调用 因为它是页面上的第一个表单 我想要做的是对回车键进行编程 以在某个文本框获得焦点时单击某个按钮 我使用 asp textbox 和 asp but
  • 如何在vim中将菜单键(“应用程序键”)映射到Escape键?

    我认为使用菜单键退出 vim 的插入模式将是一件很棒的事情 使用 Super 键也很好 但我不确定是否可能 因为 Super 键是一个修饰符 无论如何 我找不到任何与此相关的内容 寻求您的帮助并提前致谢 我认为没有任何方法可以配置 Vim
  • 是否有一个看起来像“钥匙”图标的 Unicode 字形? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 Unicode 有一百万个类似图标的字形 但它们并不总是很容易搜索 因为我并不总是知道它们是什么样子 是否有一个看起来像 钥匙 的 Unicode 字
  • 在 Android 中存储 API 密钥,混淆就足够了吗?

    我正在使用 Dropbox API 在示例应用程序中 它包含以下几行 Replace this with your consumer key and secret assigned by Dropbox Note that this is

随机推荐

  • win10 latex - Texlive+Texstudio安装

    安装Texlive环境 通过清华大学开源软件镜像站进行下 xff0c https mirrors tuna tsinghua edu cn ctan systems texlive Images 打开镜像 xff0c 双击bat文件 xff
  • 二叉搜索树的后序遍历序列

    由于输入的是后序遍历序列 xff0c 首先我们可以确定序列的最后一个位置为根节点 由于二叉搜索树的左子树比根节点小 xff0c 根节点比右子树小 xff0c 因此我们需要判断根节点的左右子树是否满足该条件 xff0c 关键是找到其左子树和右
  • 【剑指offer】二叉树中和为某一值的路径(一)

    直接对二叉树进行前序遍历 xff0c 每次累加当前节点的值 xff0c 如果到达叶子节点 xff0c 判断当前累加和是否等于给定值 xff0c 是则返回true xff0c 否则继续遍历二叉树 xff0c 若找不到则返回false span
  • Docker 容器互联

    1 基于 Volume 互联 1 1 存储 Driver Aufs Docker最早支持的driver xff0c 但它只是Linux内核的一个补丁集 Device Mapper xff1a Linux2 6 内核提供的一种从逻辑设备到物理
  • torch.cdist高效计算大矩阵相似度

    问题定义 现有矩阵 A R N C
  • 【剑指offer】二叉搜索树与双向链表

    双向链表从左到右的顺序很明显就是中序遍历二叉树输出的顺序 xff0c 因此核心思想就是使用中序遍历 xff0c 在遍历过程中调整指针的指向 需要用到两个全局变量 xff08 递归的题目不用吝啬全局变量 xff09 xff0c c u r N
  • win10远程计算机

    确保被控制电脑远程功能开启 控制面板 61 61 gt 允许远程访问 选中允许远程连接到此计算机 查看被控制电脑的用户名和ip 命令行 query user xff0c 下面的用户名为远程登录的用户名 密码为改账户的登录密码 xff08 不
  • 【剑指offer】对称的二叉树

    递归法 通过两个指针同时递归遍历左右两个子树 xff0c 判断当前遍历到的两个节点是否相等 如下图 xff0c 需要注意的是 xff0c 左右子树的遍历不是完全一样 xff0c 左子树采用左右遍历 xff0c 右子树采用右左遍历 xff0c
  • 【剑指offer】判断是不是平衡二叉树

    这题只需要在求二叉树深度的基础上扩展一下即可 xff0c 下面为求二叉树深度的代码 span class token keyword public span span class token class name HashMap span
  • Linux查看硬盘属性(机械硬盘/固态硬盘)

    通过命令lsblk d o name rota查看 xff0c 0表示固态硬盘 xff0c 1表示机械硬盘 xff0c sda为机械硬盘 xff0c sdb为固态硬盘
  • python计算众数scipy

    计算如下数组中每一行的众数 xff0c 期望结果 xff0c 第一行为1 xff0c 第二行为3 0 0 1 1 1 2 3 3 2 3 使用scipy 的统计包stats中的mode函数 xff0c 指定第二个维度 xff0c 返回元组
  • 【剑指offer】序列化二叉树

    解题思路 序列化时 xff0c 可以通过各种遍历方法 xff0c 例如层序遍历 递归遍历对二叉树进行遍历 xff0c 遍历过程中将每个节点的值拼接到字符串中 xff0c 注意每个节点之间用一个标识符隔开 xff0c 例如 xff0c 这是为
  • Linux cuda11.1安装torch_scatter,torch-sparse,torch-cluster,torch-spline-conv,torch-geometric

    创建虚拟环境 conda create n torch18 span class token assign left variable python span span class token operator 61 span span c
  • pytorch查看张量占用内存大小

    element size返回单个元素的字节大小 xff0c nelement返回元素个数 span class token keyword import span torch a span class token operator 61 s
  • MySQL8.0 集群安装 (K8S)

    尝试了很多版本的mysql镜像 xff0c 都存在这样那样的的问题 原始需求中 xff0c 需要同时支持x86 64 AMD64 和aarch64 ARM64V8 xff0c 最后找到Oracle官方出品的MySQL Server 8 0镜
  • 使用latex导出IEEE文献格式

    创建一个tex文件 xff0c 内容如下 documentclass span class token punctuation span a4paper span class token punctuation span 10pt span
  • IDEA中设置python解释器(不同虚拟环境)

    按住Ctrl 43 Shift 43 Alt 43 s xff0c 或 File gt Project Structure xff0c 在Module SDK处下拉找到对应的python解释器 xff0c 如果第一次添加python解释器
  • TF-IDF

    TF IDF xff08 term frequency inverse document frequency xff09 是一种用于信息检索与数据挖掘的常用加权技术 TF意思是词频 Term Frequency xff0c IDF意思是逆文
  • 第一次写博客-C/C++软件开发工程师需要学习哪些东西?

    学习路线概述 概述数据结构和算法操作系统计算机网络数据库设计模式 概述 作为一名本科机械电子 xff0c 研究生研究计算机视觉方向的211应届毕业生 xff0c 如何才能从事C C 43 43 软件开发类的工程师呢 xff1f 如果能有机会
  • Vue中使用v-for不能用index作为key值

    今天在改一个项目 xff0c 有一个 lt el tabs gt 的列表循环 xff0c 需要根据权限控制列表项的显示 xff0c 代码如下 xff1a span class token operator lt span template