Vue plugins are installed globally when applied with Vue.use()
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=21285) </details> <!--IssueSummary end--> ## Summary In most of our apps, we first import `Vue` and then do `Vue.use()` to load plugins like `Translate`, `VueResource`, `VueRouter` and `Vuex`, and this happens before we even do `new Vue()` to create new Vue instance, so that ends up loading the plugin on Global Vue instance. This was realized while discussing on our [Slack](https://gitlab.slack.com/archives/C0GQHHPGW/p1519720363000451) whether using `__()` & `s__()` in component templates is allowed without doing `Vue.use(Translate)` before-hand. ## Proposal This issue is open to discussion with a goal to prevent doing `Vue.use` multiple times (while Vue is smart enough to install plugin only once even if `.use()` is called multiple times for same plugin).
issue