【发布时间】:2018-05-22 18:32:53
【问题描述】:
以下具体有什么区别(什么时候用什么):
- Vue 组件
- Vue 插件
- Vue Mixins
【问题讨论】:
以下具体有什么区别(什么时候用什么):
【问题讨论】:
组件是元素。它们就像用于构建应用程序或 UI 的功能块和布局块。组件可以扩展,这样做会使用原始组件的各个方面,同时让您能够添加其他功能。
与扩展现有组件类似,您可以使用 mixin,这很像您要扩展的组件,但它为现有组件添加了功能。
插件添加了任何组件都可以访问的顶级功能。
用途取决于您要达到的目标。诸如路由和状态管理之类的东西非常适合插件,因为它允许您影响/侦听整个应用程序的更改,而无需设置道具或侦听器。但是您不会将它们用于特定于组件的功能,因为它们会污染您的应用程序。
Mixins 是一个有争议的功能,有些人认为不应该使用它。这个想法是组件包装或高阶组件可以以更健壮的方式实现。更多信息在这里:(https://reactjs.org/blog/2016/07/13/mixins-considered-harmful.html)
组件是构建 vue 应用程序的基础,因此您无法绕过使用它们,但有一些方法可以让您充分利用它们。 Vue 允许使用槽,这有助于覆盖一些功能,而 React 社区更喜欢高阶组件。
如果您对 Vue 比较陌生,我建议您不要使用 mixins,推迟使用插件,直到花时间使用组件实现功能,如果您要创建可重用组件,请使用作用域插槽. https://vuejs.org/v2/guide/components-slots.html
【讨论】: