UNPKG

jiku-ui

Version:

A Component Library for Vue.js.

46 lines (45 loc) 1.19 kB
export default { inject: ['rootSideMenu'], computed: { indexPath() { const path = [this.index]; let parent = this.$parent; while (parent.$options.componentName !== 'HnSideMenu') { if (parent.index) { path.unshift(parent.index); } parent = parent.$parent; } return path; }, parentSideMenu() { let parent = this.$parent; while ( parent && ['HnSideMenu', 'HnSideSubmenu'].indexOf(parent.$options.componentName) === -1 ) { parent = parent.$parent; } return parent; }, paddingStyle() { let padding = 20; let parent = this.$parent; let level = 0; let indent = 14; if (this.rootSideMenu.collapse) { padding = 20; } else { while (parent && parent.$options.componentName !== 'HnSideMenu') { if (parent.$options.componentName === 'HnSideSubmenu') { level++; // 一级菜单2倍缩进 padding += (level === 1) ? 2 * indent : indent; } parent = parent.$parent; } } return { paddingLeft: padding + 'px' }; } } };