From 19ebab2fa68a39883d66952b03d878dc60f771f5 Mon Sep 17 00:00:00 2001
From: liyang <1711467488@qq.com>
Date: Tue, 28 Aug 2018 09:58:31 +0800
Subject: [PATCH 01/11] =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E5=9F=BA=E7=A1=80?=
=?UTF-8?q?=E7=BB=93=E6=9E=84=E5=92=8C=E8=BE=93=E5=85=A5=E6=A1=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Former-commit-id: 373359336f6e97367f7b6a31c09fb4a28915cb07 [formerly 373359336f6e97367f7b6a31c09fb4a28915cb07 [formerly 373359336f6e97367f7b6a31c09fb4a28915cb07 [formerly 373359336f6e97367f7b6a31c09fb4a28915cb07 [formerly f700069d686be8e9ee177e36627eb284b3638ca7 [formerly a23ef90c3256f8bdee11ee6f63c778afa8b0e7d3]]]]]
Former-commit-id: cf1abe3e0fdd1078f74e78741bae59315d66aacf
Former-commit-id: 8c342c2eaeb9cf04bfbc1fa7b15f34c36445e77d
Former-commit-id: 38d7d5273db075c711a5235819cf75f15dfbd1a4 [formerly 054ce7262136015f7dd4dfa1cecd9a2e83a90449]
Former-commit-id: e6a1403e2d4426450c70b43a79f9809151df9146
Former-commit-id: b9d31641196ff5ba6cc16a8097ffc6a45582f601
Former-commit-id: e88fe6c0ea4ad041f4a9c44f36ba52222035e7d6
Former-commit-id: 34dbea74181ba5f7bba361921cc46c1750a6aadd
Former-commit-id: ffe6a1be153494a4845b800ebcdaf0483bd85ef0
---
.../theme/theme-base.scss.REMOVED.git-id | 2 +-
.../components/header-search/index.vue | 15 +++++
.../components/panel-search/index.vue | 41 ++++++++++++++
src/layout/header-aside/layout.vue | 55 +++++++++++++------
src/store/modules/d2admin/index.js | 4 +-
src/store/modules/d2admin/modules/search.js | 24 ++++++++
6 files changed, 123 insertions(+), 18 deletions(-)
create mode 100644 src/layout/header-aside/components/header-search/index.vue
create mode 100644 src/layout/header-aside/components/panel-search/index.vue
create mode 100644 src/store/modules/d2admin/modules/search.js
diff --git a/src/assets/style/theme/theme-base.scss.REMOVED.git-id b/src/assets/style/theme/theme-base.scss.REMOVED.git-id
index 76786659..0313b944 100644
--- a/src/assets/style/theme/theme-base.scss.REMOVED.git-id
+++ b/src/assets/style/theme/theme-base.scss.REMOVED.git-id
@@ -1 +1 @@
-27d62e35e945646beaa49ba9850fdbce60ed9e66
\ No newline at end of file
+76c08deda5f3f6bd81e91aeb695cae984eab131e
\ No newline at end of file
diff --git a/src/layout/header-aside/components/header-search/index.vue b/src/layout/header-aside/components/header-search/index.vue
new file mode 100644
index 00000000..a2c59425
--- /dev/null
+++ b/src/layout/header-aside/components/header-search/index.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/src/layout/header-aside/components/panel-search/index.vue b/src/layout/header-aside/components/panel-search/index.vue
new file mode 100644
index 00000000..95f890b7
--- /dev/null
+++ b/src/layout/header-aside/components/panel-search/index.vue
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
diff --git a/src/layout/header-aside/layout.vue b/src/layout/header-aside/layout.vue
index 04dce9ce..057750bf 100644
--- a/src/layout/header-aside/layout.vue
+++ b/src/layout/header-aside/layout.vue
@@ -20,6 +20,7 @@
-
@@ -63,9 +73,11 @@ export default {
'd2-menu-header': () => import('./components/menu-header'),
'd2-tabs': () => import('./components/tabs'),
'd2-header-fullscreen': () => import('./components/header-fullscreen'),
+ 'd2-header-search': () => import('./components/header-search'),
'd2-header-theme': () => import('./components/header-theme'),
'd2-header-user': () => import('./components/header-user'),
- 'd2-header-error-log': () => import('./components/header-error-log')
+ 'd2-header-error-log': () => import('./components/header-error-log'),
+ 'd2-panel-search': () => import('./components/panel-search')
},
data () {
return {
@@ -78,6 +90,7 @@ export default {
computed: {
...mapState('d2admin', {
grayActive: state => state.gray.active,
+ searchActive: state => state.search.active,
transitionActive: state => state.transition.active,
asideCollapse: state => state.menu.asideCollapse
}),
@@ -97,14 +110,24 @@ export default {
}
},
methods: {
- ...mapMutations('d2admin/menu', [
- 'asideCollapseToggle'
- ]),
+ ...mapMutations({
+ menuAsideCollapseToggle: 'd2admin/menu/asideCollapseToggle',
+ searchToggle: 'd2admin/search/toggle'
+ }),
/**
* 接收点击切换侧边栏的按钮
*/
handleToggleAside () {
- this.asideCollapseToggle()
+ this.menuAsideCollapseToggle()
+ },
+ /**
+ * 接收点击搜索按钮
+ */
+ handleSearch () {
+ this.searchToggle()
+ if (this.searchActive) {
+ this.$refs.panelSearch.focus()
+ }
}
}
}
diff --git a/src/store/modules/d2admin/index.js b/src/store/modules/d2admin/index.js
index 6ad3350b..2cc2fbc3 100644
--- a/src/store/modules/d2admin/index.js
+++ b/src/store/modules/d2admin/index.js
@@ -10,6 +10,7 @@ import ua from './modules/ua'
import gray from './modules/gray'
import page from './modules/page'
import transition from './modules/transition'
+import search from './modules/search'
export default {
namespaced: true,
@@ -25,6 +26,7 @@ export default {
ua,
gray,
page,
- transition
+ transition,
+ search
}
}
diff --git a/src/store/modules/d2admin/modules/search.js b/src/store/modules/d2admin/modules/search.js
new file mode 100644
index 00000000..a4de5849
--- /dev/null
+++ b/src/store/modules/d2admin/modules/search.js
@@ -0,0 +1,24 @@
+export default {
+ namespaced: true,
+ state: {
+ // 搜索面板激活状态
+ active: false
+ },
+ mutations: {
+ /**
+ * @description 切换激活状态
+ * @param {Object} state vuex state
+ */
+ toggle (state) {
+ state.active = !state.active
+ },
+ /**
+ * @description 设置激活模式
+ * @param {Object} state vuex state
+ * @param {Boolean} active active
+ */
+ set (state, active) {
+ state.active = active
+ }
+ }
+}
From ea1e23fc11ebab3b31043661ffe242bf2694ef05 Mon Sep 17 00:00:00 2001
From: liyang <1711467488@qq.com>
Date: Tue, 28 Aug 2018 11:12:51 +0800
Subject: [PATCH 02/11] =?UTF-8?q?=E5=BF=AB=E6=8D=B7=E9=94=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Former-commit-id: f08b7ba521a8338abff254905997bdb3d5f8b051 [formerly f08b7ba521a8338abff254905997bdb3d5f8b051 [formerly f08b7ba521a8338abff254905997bdb3d5f8b051 [formerly f08b7ba521a8338abff254905997bdb3d5f8b051 [formerly 95b51a0e9b3be340f8dc6b285a66317f5899fe71 [formerly 37fe09545b11607d94cdf89ec62429c0a68f1f03]]]]]
Former-commit-id: 4d0f8841b17942ec75fc5c6468836c31b26a5981
Former-commit-id: 5a4e3cca1b5e16f0a908af6bd341047963d27805
Former-commit-id: 293aa17f542d733777d05c0023aff252b46bebab [formerly 5ad3d0e6fa7cb27407093ca254e8c9898f31fce1]
Former-commit-id: fb90e6ede3a6548cf989404fb648472b17e7fde0
Former-commit-id: 9569f37f5b93fd5e95178a2dbcba878fc91f6c2e
Former-commit-id: b0328b0a52e939aef0fb65c3b30b50c9c72ce625
Former-commit-id: 9e3c51f9afb99d8a67d83c44b2e2fd1f9738abde
Former-commit-id: a21f8109b4c1ce4233054240b1eeba9248df3955
---
package-lock.json.REMOVED.git-id | 2 +-
package.json | 1 +
.../components/panel-search/index.vue | 7 +++-
src/layout/header-aside/layout.vue | 41 +++++++++++++++++--
src/setting.js | 8 ++++
src/store/modules/d2admin/modules/search.js | 8 +++-
6 files changed, 60 insertions(+), 7 deletions(-)
diff --git a/package-lock.json.REMOVED.git-id b/package-lock.json.REMOVED.git-id
index e44ada5f..08824f12 100644
--- a/package-lock.json.REMOVED.git-id
+++ b/package-lock.json.REMOVED.git-id
@@ -1 +1 @@
-937f5369a5d9b43eeb3c7fa2991f76724481721c
\ No newline at end of file
+3ae82b79660726c08077289a8873ef5ff3ff6471
\ No newline at end of file
diff --git a/package.json b/package.json
index 0af0e951..5a367124 100644
--- a/package.json
+++ b/package.json
@@ -25,6 +25,7 @@
"flex.css": "^1.1.7",
"github-markdown-css": "^2.10.0",
"highlight.js": "^9.12.0",
+ "hotkeys-js": "^3.3.6",
"js-cookie": "^2.2.0",
"lodash": "^4.17.10",
"lowdb": "^1.0.0",
diff --git a/src/layout/header-aside/components/panel-search/index.vue b/src/layout/header-aside/components/panel-search/index.vue
index 95f890b7..93f59b60 100644
--- a/src/layout/header-aside/components/panel-search/index.vue
+++ b/src/layout/header-aside/components/panel-search/index.vue
@@ -6,7 +6,8 @@
ref="input"
v-model="input"
suffix-icon="el-icon-search"
- placeholder="搜索页面"/>
+ placeholder="搜索页面"
+ @keydown.esc.native="handleEsc"/>
@@ -21,8 +22,12 @@ export default {
methods: {
focus () {
this.$nextTick(() => {
+ this.input = ''
this.$refs.input.focus()
})
+ },
+ handleEsc () {
+ this.$emit('close')
}
}
}
diff --git a/src/layout/header-aside/layout.vue b/src/layout/header-aside/layout.vue
index 057750bf..2182f712 100644
--- a/src/layout/header-aside/layout.vue
+++ b/src/layout/header-aside/layout.vue
@@ -20,7 +20,7 @@