vue项目中如何在外部js中例如utils.js直接调用vue实例及vue上挂在的方法

一般我们都是在main.js中引入vue,然后在vue文件中直接使用this(this指向的是vue实例),但是在实际开发中,我们往往会引入外部的js文件使用this,这个this就会指向window,并不是我们期待的vue实例,那么就需要重新引入vue文件(import Vue from 'vue'),这样很麻烦。在目前项目中我使用的方法是mian.js导出vue实例,然后在需要使用的js中引入。

 

步骤一:main.js导出vue实例

let vueMain = new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')

export default vueMain

步骤二、在需要使用vue的js中引入

import vueMain from '@/main.js'

vueMain.$router.push({
   path: '/login' 
})

 

posted @ 2020-08-10 15:58  只争朝夕,不负韶华  阅读(4074)  评论(0)    收藏  举报