You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
897 B

import { createNamespace } from '../utils';
import { ParentMixin } from '../mixins/relation';
var _createNamespace = createNamespace('sidebar'),
createComponent = _createNamespace[0],
bem = _createNamespace[1];
export default createComponent({
mixins: [ParentMixin('vanSidebar')],
model: {
prop: 'activeKey'
},
props: {
activeKey: {
type: [Number, String],
default: 0
}
},
data: function data() {
return {
index: +this.activeKey
};
},
watch: {
activeKey: function activeKey() {
this.setIndex(+this.activeKey);
}
},
methods: {
setIndex: function setIndex(index) {
if (index !== this.index) {
this.index = index;
this.$emit('change', index);
}
}
},
render: function render() {
var h = arguments[0];
return h("div", {
"class": bem()
}, [this.slots()]);
}
});