diff --git a/packages/breadcrumb/src/breadcrumb-item.vue b/packages/breadcrumb/src/breadcrumb-item.vue index 7b9f9b4a6..e0ed511da 100644 --- a/packages/breadcrumb/src/breadcrumb-item.vue +++ b/packages/breadcrumb/src/breadcrumb-item.vue @@ -20,9 +20,12 @@ separatorClass: '' }; }, + + inject: ['elBreadcrumb'], + mounted() { - this.separator = this.$parent.separator; - this.separatorClass = this.$parent.separatorClass; + this.separator = this.elBreadcrumb.separator; + this.separatorClass = this.elBreadcrumb.separatorClass; let self = this; if (this.to) { let link = this.$refs.link; diff --git a/packages/breadcrumb/src/breadcrumb.vue b/packages/breadcrumb/src/breadcrumb.vue index 97581b398..dc7a096ca 100644 --- a/packages/breadcrumb/src/breadcrumb.vue +++ b/packages/breadcrumb/src/breadcrumb.vue @@ -17,6 +17,13 @@ default: '' } }, + + provide() { + return { + elBreadcrumb: this + }; + }, + mounted() { const items = this.$el.querySelectorAll('.el-breadcrumb__item'); items[items.length - 1].setAttribute('aria-current', 'page');