2 回答
TA贡献1874条经验 获得超12个赞
插件里不是个 可配置的 选项, 你可以 全局store作为参数传进去? 你想想 这样可以吗?
更暴力的写法 是在 Vue.prototype.$hStore = store
下面这种 大概写法
// 类似插件 文件
var pulgins = Object.create(null);
pulgins.install = function(Vue, options) {
//
var vm = new Vue.extend({
render () {
h('div',
{
on: {
login () {
options.login()
},
cancel () {
options.cancel()
},
}
},
[
...
]
)
}
})
}
// 引用 文件
import store form 'store'
Vue.use(pulgins, {
login() {store.dispatch('auth/login')},
...
})
TA贡献1891条经验 获得超3个赞
提供一种不是插件的思路。
把login-box放在入口文件app.vue中,
这样在项目下任何地方都可以通过改变state来控制login-box的显示。
//app.vue
<template>
<div id="app">
<login-box :show="showLoginBox"></login-box>
<router-view></router-view>
</div>
</template>
...
computed: {
showLoginBox() {
return this.$store.state.showLoginBox
},
}
添加回答
举报