parent
b75ce266cc
commit
edbe90f8a0
@ -0,0 +1,53 @@ |
|||||||
|
/** |
||||||
|
* 在原基础上增加了 inlineIndent 属性,用于确定每级节点的单位缩进距离 |
||||||
|
*/ |
||||||
|
export default { |
||||||
|
inject: ['rootMenu'], |
||||||
|
|
||||||
|
props: { |
||||||
|
inlineIndent: {type: Number, default: 20} |
||||||
|
}, |
||||||
|
|
||||||
|
computed: { |
||||||
|
indexPath() { |
||||||
|
const path = [this.index] |
||||||
|
let parent = this.$parent |
||||||
|
while (parent.$options.componentName !== 'ElMenu') { |
||||||
|
if (parent.index) { |
||||||
|
path.unshift(parent.index) |
||||||
|
} |
||||||
|
parent = parent.$parent |
||||||
|
} |
||||||
|
return path |
||||||
|
}, |
||||||
|
|
||||||
|
parentMenu() { |
||||||
|
let parent = this.$parent |
||||||
|
while ( |
||||||
|
parent && |
||||||
|
['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1 |
||||||
|
) { |
||||||
|
parent = parent.$parent |
||||||
|
} |
||||||
|
return parent |
||||||
|
}, |
||||||
|
|
||||||
|
paddingStyle() { |
||||||
|
if (this.rootMenu.mode !== 'vertical') return {} |
||||||
|
|
||||||
|
let padding = this.inlineIndent |
||||||
|
|
||||||
|
if (!this.rootMenu.collapse) { |
||||||
|
let parent = this.$parent |
||||||
|
while (parent && parent.$options.componentName !== 'ElMenu') { |
||||||
|
if (parent.$options.componentName === 'ElSubmenu') { |
||||||
|
padding += this.inlineIndent |
||||||
|
} |
||||||
|
parent = parent.$parent |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
return {'padding-left': `${padding}px`} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
Loading…
Reference in new issue