vue 的每个组件中是否需要 import Vue from 'vue';

  1. 一开始我是在每个组件中都引入的, 但我总觉得这样做不合理

2.现在我尝试不引入 并且在ready中, 但这样写会报vue is not defined

3.就是想知道怎么样 才算合理正规的方式

clipboard.png

阅读 26.4k
4 个回答

只需在父组件(入口组件)new 一个实例,其余的子组件都 export 一个 component option 即可。

然后在入口组件里通过 componets:{ childComp, ...}局部注册

既然使用了 import,想必是用 webpack 打包的 单文件组件 吧?
如果确实是单文件组件,那么需要考虑一下,这里是否都要调用 Vue.component 方法来 全局 注册组件,还是只要使用 components 组件选项来局部注册组件?
如果是后者,每个单文件组件中都不需要引入 vue。
因为单文件组件经 webpack 打包后,生成的模块只是一个组件选项对象,被其他组件或 Vue 实例注册时使用语法糖,只需要 字面量对象的 组件选项对象就可以了。

个人整理了关于组件、单文件组件打包的示例代码及注解,供参考:https://kingmario.github.io/v...

新手上路,请多包涵

把import Vue from 'vue'写在main.js中
然后把一些要导入的包(基于vue和不基于vue的)
基于vue的,要使用vue.use('xx')
一些vue-router和vuex都注入到根实例里 文件main.js中

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题