From d5e8d77bbce2f4d7dfcbbdcd162d7aae2041f565 Mon Sep 17 00:00:00 2001
From: yang <1441163367@qq.com>
Date: 星期二, 25 十月 2022 17:54:46 +0800
Subject: [PATCH] first
---
src/page/index/tags.vue | 170 --------------------------------------------------------
1 files changed, 0 insertions(+), 170 deletions(-)
diff --git a/src/page/index/tags.vue b/src/page/index/tags.vue
index 99ce409..e69de29 100644
--- a/src/page/index/tags.vue
+++ b/src/page/index/tags.vue
@@ -1,170 +0,0 @@
-<template>
- <div
- v-if="showTag"
- @click="contextmenuFlag=false"
- class="avue-tags">
- <!-- tag鐩掑瓙 -->
- <div
- v-if="contextmenuFlag"
- :style="{left:contentmenuX+'px',top:contentmenuY+'px'}"
- class="avue-tags__contentmenu">
- <div
- class="item"
- @click="closeOthersTags">鍏抽棴鍏朵粬
- </div>
- <div
- class="item"
- @click="closeAllTags">鍏抽棴鍏ㄩ儴
- </div>
- </div>
- <div
- :class="{'avue-tags__box--close':!website.isFirstPage}"
- class="avue-tags__box">
- <el-tabs
- v-model="active"
- :closable="tagLen!==1"
- type="card"
- @contextmenu.native="handleContextmenu"
- @tab-click="openTag"
- @edit="menuTag">
- <el-tab-pane
- v-for="item in tagList"
- :key="item.value"
- :label="item.label"
- :name="item.value"/>
-
- </el-tabs>
- <el-dropdown class="avue-tags__menu">
- <el-button
- type="primary"
- size="mini">
- 鏇村
- <i class="el-icon-arrow-down el-icon--right"/>
- </el-button>
- <el-dropdown-menu slot="dropdown">
- <el-dropdown-item @click.native="closeOthersTags">鍏抽棴鍏朵粬</el-dropdown-item>
- <el-dropdown-item @click.native="closeAllTags">鍏抽棴鍏ㄩ儴</el-dropdown-item>
- </el-dropdown-menu>
- </el-dropdown>
- </div>
-
- </div>
-</template>
-<script>
- import { mapGetters, mapState } from 'vuex'
-
- export default {
- name: 'Tags',
- data() {
- return {
- active: '',
- contentmenuX: '',
- contentmenuY: '',
- contextmenuFlag: false
- }
- },
- watch: {
- tag() {
- this.setActive()
- },
- contextmenuFlag() {
- window.addEventListener('mousedown', this.watchContextmenu)
- }
- },
- created() {
- },
- mounted() {
- this.setActive()
- },
- computed: {
- ...mapGetters(['tagWel', 'tagList', 'tag', 'website']),
- ...mapState({
- showTag: state => state.common.showTag
- }),
- tagLen() {
- return this.tagList.length || 0
- }
- },
- methods: {
- watchContextmenu() {
- if (!this.$el.contains(event.target) || event.button !== 0) {
- this.contextmenuFlag = false
- }
-
- window.removeEventListener('mousedown', this.watchContextmenu)
- },
- handleContextmenu(event) {
- let target = event.target
- // 瑙e喅 https://github.com/d2-projects/d2-admin/issues/54
- let flag = false
- if (target.className.indexOf('el-tabs__item') > -1) flag = true
- else if (target.parentNode.className.indexOf('el-tabs__item') > -1) {
- target = target.parentNode
- flag = true
- }
- if (flag) {
- event.preventDefault()
- event.stopPropagation()
- this.contentmenuX = event.clientX
- this.contentmenuY = event.clientY
- this.tagName = target.getAttribute('aria-controls').slice(5)
- this.contextmenuFlag = true
- }
- },
- // 婵�娲诲綋鍓嶉�夐」
- setActive() {
- this.active = this.tag.value
- },
- menuTag(value, action) {
- if (action === 'remove') {
- let { tag, key } = this.findTag(value)
- this.$store.commit('DEL_TAG', tag)
- if (tag.value === this.tag.value) {
- tag = this.tagList[key === 0 ? key : key - 1] // 濡傛灉鍏抽棴鏈爣绛捐鍓嶆帹涓�涓�
- this.openTag(tag)
- }
- }
- },
- openTag(item) {
- let tag
- if (item.name) {
- tag = this.findTag(item.name).tag
- } else {
- tag = item
- }
- this.$router.push({
- path: this.$router.$avueRouter.getPath({
- name: tag.label,
- src: tag.value
- }),
- query: tag.query
- }).catch(() => {})
- },
- closeOthersTags() {
- this.contextmenuFlag = false
- this.$store.commit('DEL_TAG_OTHER')
- },
- findTag(value) {
- let tag, key
- this.tagList.map((item, index) => {
- if (item.value === value) {
- tag = item
- key = index
- }
- })
- return { tag: tag, key: key }
- },
- closeAllTags() {
- this.contextmenuFlag = false
- this.$store.commit('DEL_ALL_TAG')
- this.$router.push({
- path: this.$router.$avueRouter.getPath({
- src: this.tagWel.value
- }),
- query: this.tagWel.query
- })
- }
- }
- }
-</script>
-
--
Gitblit v1.9.1