@@ -0,0 +1,40 @@
|
||||
import events from './events'
|
||||
import MultiTab from './MultiTab'
|
||||
import './index.less'
|
||||
|
||||
const api = {
|
||||
/**
|
||||
* open new tab on route fullPath
|
||||
* @param config
|
||||
*/
|
||||
open: function (config) {
|
||||
events.$emit('open', config)
|
||||
},
|
||||
rename: function (key, name) {
|
||||
events.$emit('rename', { key: key, name: name })
|
||||
},
|
||||
/**
|
||||
* close current page
|
||||
*/
|
||||
closeCurrentPage: function () {
|
||||
this.close()
|
||||
},
|
||||
/**
|
||||
* close route fullPath tab
|
||||
* @param config
|
||||
*/
|
||||
close: function (config) {
|
||||
events.$emit('close', config)
|
||||
}
|
||||
}
|
||||
|
||||
MultiTab.install = function (Vue) {
|
||||
if (Vue.prototype.$multiTab) {
|
||||
return
|
||||
}
|
||||
api.instance = events
|
||||
Vue.prototype.$multiTab = api
|
||||
Vue.component('multi-tab', MultiTab)
|
||||
}
|
||||
|
||||
export default MultiTab
|
||||
Reference in New Issue
Block a user