vue/no-this-in-before-route-enter
disallow
this
usage in abeforeRouteEnter
method
📖 Rule Details
Because lack of this
in the beforeRouteEnter
(docs). This behavior isn't obvious, so it's pretty easy to make a TypeError
. Especially during some refactor.
<script>
export default {
beforeRouteEnter() {
/* ✗ BAD */
this.method(); // Uncaught TypeError: Cannot read property 'method' of undefined
this.attribute = 42;
if (this.value === 42) {
}
this.attribute = this.method();
}
}
</script>
<script>
export default {
beforeRouteEnter() {
/* ✓ GOOD */
// anything without this
}
}
</script>
🔧 Options
Nothing.
🔇 When Not To Use It
When vue-router is not installed.
📚 Further Reading
vue-router - in-component-guards
🚀 Version
This rule was introduced in eslint-plugin-vue v7.11.0