|
9 | 9 | :to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
|
10 | 10 | tag="span"
|
11 | 11 | class="tags-view-item"
|
12 |
| - @click.middle.native="closeSelectedTag(tag)" |
| 12 | + @click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''" |
13 | 13 | @contextmenu.prevent.native="openMenu(tag,$event)"
|
14 | 14 | >
|
15 | 15 | {{ generateTitle(tag.title) }}
|
16 |
| - <span v-if="!tag.meta.affix" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" /> |
| 16 | + <span v-if="!isAffix(tag)" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" /> |
17 | 17 | </router-link>
|
18 | 18 | </scroll-pane>
|
19 | 19 | <ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu">
|
20 |
| - <li @click="refreshSelectedTag(selectedTag)"> |
21 |
| - {{ $t('tagsView.refresh') }} |
22 |
| - </li> |
23 |
| - <li v-if="!(selectedTag.meta&&selectedTag.meta.affix)" @click="closeSelectedTag(selectedTag)"> |
24 |
| - {{ |
25 |
| - $t('tagsView.close') }} |
26 |
| - </li> |
27 |
| - <li @click="closeOthersTags"> |
28 |
| - {{ $t('tagsView.closeOthers') }} |
29 |
| - </li> |
30 |
| - <li @click="closeAllTags(selectedTag)"> |
31 |
| - {{ $t('tagsView.closeAll') }} |
32 |
| - </li> |
| 20 | + <li @click="refreshSelectedTag(selectedTag)">{{ $t('tagsView.refresh') }}</li> |
| 21 | + <li v-if="!isAffix(selectedTag)" @click="closeSelectedTag(selectedTag)">{{ $t('tagsView.close') }}</li> |
| 22 | + <li @click="closeOthersTags">{{ $t('tagsView.closeOthers') }}</li> |
| 23 | + <li @click="closeAllTags(selectedTag)">{{ $t('tagsView.closeAll') }}</li> |
33 | 24 | </ul>
|
34 | 25 | </div>
|
35 | 26 | </template>
|
@@ -80,6 +71,9 @@ export default {
|
80 | 71 | isActive(route) {
|
81 | 72 | return route.path === this.$route.path
|
82 | 73 | },
|
| 74 | + isAffix(tag) { |
| 75 | + return tag.meta && tag.meta.affix |
| 76 | + }, |
83 | 77 | filterAffixTags(routes, basePath = '/') {
|
84 | 78 | let tags = []
|
85 | 79 | routes.forEach(route => {
|
|
0 commit comments