Vue.prototype、Vue.component和Vue.use的区别

1、Vue.prototype

  • 在很多组件里用到数据/实用工具,但是不想污染全局作用域。这种情况下,你可以通过在原型上定义它们使其在每个 Vue 的实例中可用
  • $ 是在 Vue 所有实例中都可用的 property 的一个简单约定。这样做会避免和已被定义的数据、方法、计算属性产生冲突
  • 常用于方法与变量
import pinyin from 'js-pinyin';
Vue.prototype.$pinyin = pinyin;

2、vue.component

  • 注册全局组件
  • 第一个参数是调用组件时写的组件名
  • 第二个参数是引入组件时写的标签名称
  • 常用于注册自定义组件
import JsTree from '@/components/JsTree';
Vue.component('JsTree', JsTree);

3、Vue.use

  • 注册全局插件
  • 会自动阻止多次注册相同插件,届时即使多次调用也只会注册一次该插件
  • 插件应该暴露一个 install 方法。这个方法的第一个参数是 Vue 构造器,第二个参数是一个可选的选项对象
  • 常用于注册第三方插件
import VueContextMenu from 'vue-contextmenu';
Vue.use(VueContextMenu);

你可能感兴趣的:(vue,vue.js)