Skip to content

Latest commit

 

History

History
58 lines (41 loc) · 2.09 KB

no-child-content.md

File metadata and controls

58 lines (41 loc) · 2.09 KB
pageClass sidebarDepth title description since
rule-details
0
vue/no-child-content
disallow element's child contents which would be overwritten by a directive like `v-html` or `v-text`
v8.1.0

vue/no-child-content

disallow element's child contents which would be overwritten by a directive like v-html or v-text

  • ⚙️ 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".
  • 💡 Some problems reported by this rule are manually fixable by editor suggestions.

📖 Rule Details

This rule reports child content of elements that have a directive which overwrites that child content. By default, those are v-html and v-text, additional ones (e.g. Vue I18n's v-t directive) can be configured manually.

<template>
  <!-- ✓ GOOD -->
  <div>child content</div>
  <div v-html="replacesChildContent"></div>

  <!-- ✗ BAD -->
  <div v-html="replacesChildContent">child content</div>
</template>

🔧 Options

{
  "vue/no-child-content": ["error", {
    "additionalDirectives": ["foo"] // checks v-foo directive
  }]
}
  • additionalDirectives ... An array of additional directives to check, without the v- prefix. Empty by default; v-html and v-text are always checked.

📚 Further Reading

🚀 Version

This rule was introduced in eslint-plugin-vue v8.1.0

🔍 Implementation