From 9d326619ea93e8c9f99d50214052d5f9e0838bc3 Mon Sep 17 00:00:00 2001 From: deardrops Date: Tue, 4 Jul 2017 17:32:18 +0800 Subject: [PATCH 01/12] rebuild `block` component, add DeckEditor page --- dev.js | 2 +- src/components/Block.vue | 34 +++++---- src/pages/Deck.vue | 13 +++- src/pages/DeckEditor.vue | 157 +++++++++++++++++++++++++++++++++++++++ src/pages/Search.vue | 1 - src/pages/introduce.md | 1 + src/router.js | 4 + src/store.js | 7 +- 8 files changed, 200 insertions(+), 19 deletions(-) create mode 100644 src/pages/DeckEditor.vue diff --git a/dev.js b/dev.js index 113a9bc..e6a25ba 100644 --- a/dev.js +++ b/dev.js @@ -28,7 +28,7 @@ app.use('/background', express.static('./background')) app.use('/', express.static('./src')) app.use('/dist', express.static('./dist')) -app.use('/lang', proxy('hongkong.webxoss.com:8080', { +app.use('/lang', proxy('webxoss.com', { proxyReqPathResolver: req => '/lang' + url.parse(req.url).path, https: true, })) diff --git a/src/components/Block.vue b/src/components/Block.vue index 6aa99d3..2dff04a 100644 --- a/src/components/Block.vue +++ b/src/components/Block.vue @@ -11,40 +11,46 @@ export default { type: Object, require: true, }, + showCount: { + type: Boolean, + require: false, + }, }, computed: { ...mapGetters([ 'deckPids', ]), - detailRoute() { - return { - path: '/detail', - query: { - pid: this.card.pid, - }, - } - }, count() { return this.deckPids.filter(pid => pid === this.card.pid).length }, }, + methods: { + handleClick() { + this.$emit('click', this.card.pid) + }, + hover() { + // 节流 + this.$store.commit('setShownPid', this.card.pid) + }, + }, } - diff --git a/src/pages/DeckEditor.vue b/src/pages/DeckEditor.vue new file mode 100644 index 0000000..63226ac --- /dev/null +++ b/src/pages/DeckEditor.vue @@ -0,0 +1,157 @@ + + + + + diff --git a/src/pages/Search.vue b/src/pages/Search.vue index 109673e..6d01507 100644 --- a/src/pages/Search.vue +++ b/src/pages/Search.vue @@ -15,7 +15,6 @@ export default { // block the search for a short time after input. timer: -1, blocking: false, - request: -1, searchTips: require('./searchTips.md'), // test emptyTips: require('./emptyTips.md'), // test diff --git a/src/pages/introduce.md b/src/pages/introduce.md index a0965eb..490bcbc 100644 --- a/src/pages/introduce.md +++ b/src/pages/introduce.md @@ -7,3 +7,4 @@ * GitHub: [webxoss-deckeditor2](https://github.com/Deardrops/webxoss-deckeditor2) ## [👉 Try our new DeckEditor](#/deck) +## [DeckEditor | desktop view | WIP](#/deckeditor) diff --git a/src/router.js b/src/router.js index 59329e3..23b7b1e 100644 --- a/src/router.js +++ b/src/router.js @@ -26,5 +26,9 @@ export default new Router({ path: '/gallery', component: require('pages/Gallery'), }, + { + path: '/deckeditor', + component: require('pages/DeckEditor'), + }, ], }) diff --git a/src/store.js b/src/store.js index 9e8319a..ed0c741 100644 --- a/src/store.js +++ b/src/store.js @@ -29,7 +29,7 @@ const state = { // current selected deck name deckName: '', - + shownPid: 1, localization: { lang: 'en', }, @@ -167,6 +167,11 @@ const mutations = { changeWindowWidth(state, width) { state.windowWidth = width }, + setShownPid(state, pid) { + if (0 < pid && pid < Object.keys(CardInfo).length) { + state.pid = pid + } + }, } const actions = { From 9f3311dc9b43366aa7a330b65db282fddac734f5 Mon Sep 17 00:00:00 2001 From: deardrops Date: Wed, 5 Jul 2017 15:09:58 +0800 Subject: [PATCH 02/12] rebuild component --- src/components/CardInfoTable.vue | 0 .../{CellContainer.vue => ListContainer.vue} | 56 +++----- src/pages/Deck.vue | 21 ++- src/pages/DeckEditor.vue | 132 ++++++++++-------- src/pages/Search.vue | 12 +- src/store.js | 2 +- 6 files changed, 120 insertions(+), 103 deletions(-) create mode 100644 src/components/CardInfoTable.vue rename src/components/{CellContainer.vue => ListContainer.vue} (61%) diff --git a/src/components/CardInfoTable.vue b/src/components/CardInfoTable.vue new file mode 100644 index 0000000..e69de29 diff --git a/src/components/CellContainer.vue b/src/components/ListContainer.vue similarity index 61% rename from src/components/CellContainer.vue rename to src/components/ListContainer.vue index d613397..027016f 100644 --- a/src/components/CellContainer.vue +++ b/src/components/ListContainer.vue @@ -1,23 +1,16 @@ @@ -117,41 +140,34 @@ export default { .container { display: flex; } -.detail { - width: 20%; -} -.image { - display: block; - margin: 0 auto; -} -.blocks { - width: 60%; -} -.block { - width: 10%; -} -.searcher { - width: 20%; - height: 100vh; - overflow: auto; -} .search { - position: absolute; - z-index: 1; - height: 2em; - margin: .5em; - background-color: #fff; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); + flex: .4; + color: #fff; + padding: .3em .5em; + background-color: color(var(--main-color) l(+10%)); + border-radius: 3px; } .search::placeholder { - color: #000a; + color: #fffa; } .search::selection { color: #333; + background-color: #ffff00; } -.result { - width: 200px; - padding-top: 3em; - margin: 0 auto; +.deckZone { + width: 50%; + padding: .5em; +} +.deckBlock { + width: 10%; +} +.searchZone { + width: 50%; + height: calc(100vh - var(--header-height)); + overflow: scroll; +} +.searchBlock { + padding: .3em; + width: 20%; } diff --git a/src/pages/Search.vue b/src/pages/Search.vue index 6d01507..63995ee 100644 --- a/src/pages/Search.vue +++ b/src/pages/Search.vue @@ -1,14 +1,16 @@ From 57db0bfac915eaa13c4778be4a127f87d5297977 Mon Sep 17 00:00:00 2001 From: deardrops Date: Sat, 22 Jul 2017 18:32:20 +0800 Subject: [PATCH 04/12] abstract out component & redesign layout --- src/components/Block.vue | 8 +- src/components/CardInfoTable.vue | 130 ++++++++++++++++++++++ src/components/ListContainer.vue | 2 +- src/css/vars.css | 8 +- src/pages/DeckEditor.vue | 185 ++++++++++++++----------------- src/pages/Detail.vue | 115 ++----------------- 6 files changed, 234 insertions(+), 214 deletions(-) diff --git a/src/components/Block.vue b/src/components/Block.vue index 2dff04a..5372cd0 100644 --- a/src/components/Block.vue +++ b/src/components/Block.vue @@ -28,9 +28,9 @@ export default { handleClick() { this.$emit('click', this.card.pid) }, - hover() { + handleHover() { // 节流 - this.$store.commit('setShownPid', this.card.pid) + this.$emit('hover', this.card.pid) }, }, } @@ -39,8 +39,8 @@ export default {