Vue.extend创建实例共享store问题

weixin_38067747 2018-09-29 06:21:26
我希望可以在vue实例全局注册类似$toast,$alert的方法,然后在各个组件处可以像this.$toast()这样调用方法。 我现在使用vue.extend的方式,在调用方法时实例化组件,然后挂载在页面上,在不用时可以随时销毁,比如 import Vue from 'vue' import videoplayer from './video-player.vue'; const videoPlayerConstructor = Vue.extend(videoplayer); const videoPlayer = (initVideoData = {}) => { let instance = new videoPlayerConstructor({propsData:{initVideoData:initVideoData}}).$mount(); document.body.appendChild(instance.$el); }; export default videoPlayer; Vue.$videoPlayer = Vue.prototype.$videoPlayer = videoPlayer; 但是因为这是新实例化的vue,取不到全局挂载的vue对象下的类似store的实例,请问有什么好的办法或者说优雅官方的做法,让这样的组件可以获取到主实例上的store。或者有其他方法可以实现我的这种用法需求。
...全文
432 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38075024 2018-09-30
  • 打赏
  • 举报
回复
element单例组件类似alert等也没有把实例上的store注入吧
weixin_38076856 2018-09-29
  • 打赏
  • 举报
回复
http://element-cn.eleme.io/#/zh-CN/component/quickstart你可以看下elementUI的按需引入

476

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧