-
-
Notifications
You must be signed in to change notification settings - Fork 664
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(v-on-handler-style): allow ["inline", "inline-function"]
option
#2471
base: master
Are you sure you want to change the base?
feat(v-on-handler-style): allow ["inline", "inline-function"]
option
#2471
Conversation
Cool, thank you! Should the |
This would prevent the interdiction to use <template>
<!-- Using an inline function with a good argument name is better -->
<MyComp @increase="(count) => myHandler(count)" />`
<!-- It's why we don't allow $event, as it is meaningless (and is absolutely not an Event here) -->
<MyComp @increase="myHandler($event)" />`
</template> Edit: Or maybe it could be configurable as an option? |
I think if you want to force explicit parameter naming, then you should only allow If you prefer shortness over explicitness however, then |
I see your point, but it's really common to only need an inline handler. I don't think we should force users to use The primary goal of this PR is to forbid the usage of method handler, as it's error prone, and allow the two others. I updated my proposal to add an
|
e95c657
to
91da522
Compare
Hmm, I don't like the extra option. The logic is quite convoluted already anyway, and the extra option makes it even harder to understand. But I think we can change the rule like this:
What do you think? |
Thank you for your reply. After some thought, I wonder if this rule isn't trying to handle too many things at once. I agree on your first point (although I think Perhaps it would be easier to disallow these different behaviors with new, independent rules? For example:
This is just a quick overview, and I may be overlooking certain situations. |
Thanks for working on new option and for the suggestions. However, for now I don't think it's a good idea to split up what the |
@ByScripts are you interested in changing the rule like I described in my comment above? |
Fixes #2460
Allow using
["inline", "inline-function"]
option forv-on-handler-style
rule.In this case:
method
style will be forbidden@click="myHandler"
inline-function
style will only be accepted with at least 1 argument:@click="() => myHandler()"
@click="myHandler()"
@click="(evt) => myHandler(evt)"
@click="(arg1, arg2) => myHandler(arg1, arg2)"
inline
style will be required in other cases@click="() => myHandler($event)"
@click="myHandler($event)"
@click="() => count++"
@click="count++"