feat!: deprecate v-t
custom directive
#2045
Merged
+93
−19
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Reason
The advantage of
v-t
was that it could optimize performance using the vue compiler transform and the pre-translation ofvue-i18n-extension
.This feature was supported from Vue 2.
About details see the blog article: https://medium.com/@kazu_pon/performance-optimization-of-vue-i18n-83099eb45c2d
In Vue 3, due to the Composition API, the pre-translation of
vue-i18n-extension
is now limited only for global scope.In addition, Vue 3 Virtual DOM optimization has been introduced, and the optimization provided by
vue-i18n-extension
is no longer very effective. We need to require settings for SSR, the benefits of usingv-t
have disappeared. And DX of templates usingv-t
is not good. Custom directives do not work with key completion in editors (e.g. vscode).For compatibility,
v-t
mode still works in v11, but will be removed entirely in v12, sov-t
will not work after that version.