Skip to content

Latest commit

 

History

History
66 lines (43 loc) · 2.04 KB

no-template-key.md

File metadata and controls

66 lines (43 loc) · 2.04 KB
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", *.configs["flat/essential"], "plugin:vue/essential", *.configs["flat/vue2-essential"], "plugin:vue/vue3-strongly-recommended", *.configs["flat/strongly-recommended"], "plugin:vue/strongly-recommended", *.configs["flat/vue2-strongly-recommended"], "plugin:vue/vue3-recommended", *.configs["flat/recommended"], "plugin:vue/recommended" and *.configs["flat/vue2-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