瀏覽代碼

:recycle: just a little more cleaning up

tags/0.9.0
j 5 年之前
父節點
當前提交
a3ab427cb1
共有 2 個文件被更改,包括 18 次插入16 次删除
  1. 16
    14
      vue-theme/src/pages/list.vue
  2. 2
    2
      vue-theme/src/pages/single.vue

+ 16
- 14
vue-theme/src/pages/list.vue 查看文件

31
 import { convertTitleCase, typeFromRoute, sortTypes } from '@/utils/helpers'
31
 import { convertTitleCase, typeFromRoute, sortTypes } from '@/utils/helpers'
32
 
32
 
33
 export default {
33
 export default {
34
+    components: { sidebar },
34
     props: {
35
     props: {
35
-        sidebar: {
36
-            type: Boolean
37
-        },
38
-        sortBy: {
39
-            type: String
40
-        }
36
+        sidebar: { type: Boolean },
37
+        sortBy: { type: String }
41
     },
38
     },
42
-    components: { sidebar },
43
     computed: {
39
     computed: {
44
         ...mapGetters({
40
         ...mapGetters({
45
             allPages: 'allPages',
41
             allPages: 'allPages',
66
         },
62
         },
67
         posts() {
63
         posts() {
68
             let type = convertTitleCase(this.type)
64
             let type = convertTitleCase(this.type)
69
-            
70
-            // We're override the API to sort by date
71
-            // because items are returned by ID
65
+            if(!type) return
66
+
67
+            /**
68
+             * We override the API to sort by date
69
+             * because items are returned by ID so
70
+             * we need to resort it by date
71
+             */ 
72
             let unsortedOfType = Object.values(this[`all${type}`])
72
             let unsortedOfType = Object.values(this[`all${type}`])
73
-            let sortedByRecent = unsortedOfType.sort((postA, postB) => {
74
-                return new Date(postB.date) - new Date(postA.date)
75
-            })
73
+            let sortedByRecent = unsortedOfType.sort((postA, postB) => new Date(postB.date) - new Date(postA.date))
76
             
74
             
77
-            // !: Sorting of this[`all${type}`] is controlled by API
75
+            /**
76
+             * Sorting of this[`all${type}`] is also controlled by API
77
+             * so if a sortBy is specified we return it sorted or
78
+             * we fail over to sorted by date
79
+             */
78
             return this.sortBy ? this[`all${type}`] : sortedByRecent
80
             return this.sortBy ? this[`all${type}`] : sortedByRecent
79
         },
81
         },
80
     },
82
     },

+ 2
- 2
vue-theme/src/pages/single.vue 查看文件

39
 import { convertTitleCase, typeFromRoute } from '@/utils/helpers'
39
 import { convertTitleCase, typeFromRoute } from '@/utils/helpers'
40
 
40
 
41
 export default {
41
 export default {
42
+    components: { sidebar, gallery },
42
     props: {
43
     props: {
43
         sidebar: { type: Boolean }
44
         sidebar: { type: Boolean }
44
     },
45
     },
45
-    components: { sidebar, gallery },
46
     data() {
46
     data() {
47
         return {
47
         return {
48
             // Gallery control
48
             // Gallery control
152
          * !: posts watcher fires when this finishes
152
          * !: posts watcher fires when this finishes
153
          */
153
          */
154
         let type = convertTitleCase(this.type)
154
         let type = convertTitleCase(this.type)
155
-        if(!this[`all${type}Loaded`]) {
155
+        if(!this[`all${type}Loaded`] && type) {
156
             // console.log('Retrieving...', type)
156
             // console.log('Retrieving...', type)
157
             this.$store.dispatch(`getAll${type}`)
157
             this.$store.dispatch(`getAll${type}`)
158
         }
158
         }

Loading…
取消
儲存