Skip to content

Latest commit

 

History

History
83 lines (66 loc) · 1.92 KB

no-reserved-keys.md

File metadata and controls

83 lines (66 loc) · 1.92 KB
pageClass sidebarDepth title description
rule-details
0
vue/no-reserved-keys
disallow overwriting reserved keys

vue/no-reserved-keys

disallow overwriting reserved keys

  • ⚙️ 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".

📖 Rule Details

This rule prevents to use reserved names to avoid conflicts and unexpected behavior.

<script>
/* ✗ BAD */
export default {
  props: {
    $el: String
  },
  computed: {
    $on: {
      get () {}
    }
  },
  data: {
    _foo: null
  },
  methods: {
    $nextTick () {}
  }
}
</script>

🔧 Options

{
  "vue/no-reserved-keys": ["error", {
    "reserved": [],
    "groups": []
  }]
}
  • reserved (string[]) ... Array of additional restricted attributes inside groups. Default is empty.
  • groups (string[]) ... Array of additional group names to search for duplicates in. Default is empty.

"reserved": ["foo", "foo2"], "groups": ["firebase"]

<script>
/* ✗ BAD */
export default {
  computed: {
    foo () {}
  },
  firebase: {
    foo2 () {}
  }
}
</script>

📚 Further Reading

🔍 Implementation