| | |
| | | });
|
| | | }
|
| | | if (route.children) {
|
| | | const tempTags = this.filterAffixTags(route.children, route.path);
|
| | | const tempTags = this.filterAffixTags(
|
| | | route.children,
|
| | | route.path
|
| | | );
|
| | | if (tempTags.length >= 1) {
|
| | | tags = [...tags, ...tempTags];
|
| | | }
|
| | |
| | | return tags;
|
| | | },
|
| | | initTags() {
|
| | | const affixTags = (this.affixTags = this.filterAffixTags(this.routes));
|
| | | const affixTags = (this.affixTags = this.filterAffixTags(
|
| | | this.routes
|
| | | ));
|
| | | for (const tag of affixTags) {
|
| | | // Must have tag name
|
| | | if (tag.name) {
|
| | |
| | | this.$refs.scrollPane.moveToTarget(tag);
|
| | | // when query is different then update
|
| | | if (tag.to.fullPath !== this.$route.fullPath) {
|
| | | this.$store.dispatch("tagsView/updateVisitedView", this.$route);
|
| | | this.$store.dispatch(
|
| | | "tagsView/updateVisitedView",
|
| | | this.$route
|
| | | );
|
| | | }
|
| | | break;
|
| | | }
|
| | |
| | | });
|
| | | },
|
| | | closeAllTags(view) {
|
| | | this.$store.dispatch("tagsView/delAllViews").then(({ visitedViews }) => {
|
| | | this.$store
|
| | | .dispatch("tagsView/delAllViews")
|
| | | .then(({ visitedViews }) => {
|
| | | if (this.affixTags.some(tag => tag.path === view.path)) {
|
| | | return;
|
| | | }
|