Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
pageClass sidebarDepth title description since
rule-details
0
vue/no-template-key
disallow `key` attribute on `<template>`
v3.4.0

vue/no-template-key

disallow key attribute on <template>

  • ⚙️ This rule is included in all of "plugin:vue/vue3-essential", "plugin:vue/essential", "plugin:vue/vue3-strongly-recommended", "plugin:vue/strongly-recommended", "plugin:vue/vue3-recommended" and "plugin:vue/recommended".

Vue.js disallows key attribute on <template> elements.

📖 Rule Details

This rule reports the <template> elements which have key attribute.

<template>
  <!-- ✓ GOOD -->
  <div key="foo"> ... </div>
  <template> ... </template>

  <!-- It's valid for Vue.js 3.x -->
  <template v-for="item in list" :key="item.id"> ... </template>

  <!-- ✗ BAD -->
  <template key="foo"> ... </template>
  <template v-bind:key="bar"> ... </template>
  <template :key="baz"> ... </template>
</template>

::: tip Note This rule does not report keys placed on <template v-for>. It's valid for Vue.js 3.x. If you want to report keys placed on <template v-for> invalid for Vue.js 2.x, use vue/no-v-for-template-key rule. :::

🔧 Options

Nothing.

👫 Related Rules

📚 Further Reading

🚀 Version

This rule was introduced in eslint-plugin-vue v3.4.0

🔍 Implementation