默认提交
Showing
14 changed files
with
298 additions
and
21 deletions
| ... | @@ -330,9 +330,6 @@ textarea { | ... | @@ -330,9 +330,6 @@ textarea { |
| 330 | position: relative; | 330 | position: relative; |
| 331 | } | 331 | } |
| 332 | 332 | ||
| 333 | .btn { | ||
| 334 | cursor: pointer; | ||
| 335 | } | ||
| 336 | 333 | ||
| 337 | .swiper-pagination-bullet { | 334 | .swiper-pagination-bullet { |
| 338 | width: 1rem !important; | 335 | width: 1rem !important; | ... | ... |
src/components/pagination/pagination.js
0 → 100644
| 1 | import api from '@/api/api' | ||
| 2 | import { | ||
| 3 | httpGet, | ||
| 4 | httpPost | ||
| 5 | } from '@/api/fetch-api.js' | ||
| 6 | |||
| 7 | export default { | ||
| 8 | name: "pagination", | ||
| 9 | props: { | ||
| 10 | total: { | ||
| 11 | type: Number, | ||
| 12 | default: 1 | ||
| 13 | } | ||
| 14 | }, | ||
| 15 | data() { | ||
| 16 | return { | ||
| 17 | // total: 10, // 总页数 | ||
| 18 | cur: 1, // 当前页码 | ||
| 19 | sel: 1, // 选择的页码 | ||
| 20 | } | ||
| 21 | }, | ||
| 22 | components: {}, | ||
| 23 | computed: { | ||
| 24 | offSet: function () { | ||
| 25 | return (this.cur - 1) * 5 | ||
| 26 | }, | ||
| 27 | indexs: function () { | ||
| 28 | var left = 1 | ||
| 29 | var right = this.total | ||
| 30 | var ar = [] | ||
| 31 | if (this.total >= 11) { | ||
| 32 | if (this.cur > 5 && this.cur < this.total - 4) { | ||
| 33 | left = this.cur - 5 | ||
| 34 | right = this.cur + 4 | ||
| 35 | } else { | ||
| 36 | if (this.cur <= 5) { | ||
| 37 | left = 1 | ||
| 38 | right = 10 | ||
| 39 | } else { | ||
| 40 | right = this.total | ||
| 41 | left = this.total - 9 | ||
| 42 | } | ||
| 43 | } | ||
| 44 | } | ||
| 45 | while (left <= right) { | ||
| 46 | ar.push(left) | ||
| 47 | left++ | ||
| 48 | } | ||
| 49 | return ar | ||
| 50 | } | ||
| 51 | }, | ||
| 52 | methods: { | ||
| 53 | jumpPage() { | ||
| 54 | this.cur = this.sel; | ||
| 55 | if (this.cur < 1) this.cur = 1; | ||
| 56 | if (this.cur > this.total) this.cur = this.total; | ||
| 57 | this.sendPage(); | ||
| 58 | }, | ||
| 59 | selPage(data) { //页码点击事件 | ||
| 60 | if (data == this.cur) return; | ||
| 61 | this.cur = data; | ||
| 62 | this.sel = this.cur; | ||
| 63 | this.sendPage(); | ||
| 64 | }, | ||
| 65 | prevPage() { | ||
| 66 | this.cur--; | ||
| 67 | if (this.cur < 1) this.cur = 1; | ||
| 68 | this.sel = this.cur; | ||
| 69 | this.sendPage(); | ||
| 70 | }, | ||
| 71 | nextPage() { | ||
| 72 | this.cur++; | ||
| 73 | if (this.cur > this.total) this.cur = this.total; | ||
| 74 | this.sel = this.cur; | ||
| 75 | this.sendPage(); | ||
| 76 | }, | ||
| 77 | sendPage() { | ||
| 78 | // 发送事件 | ||
| 79 | this.$emit("selpage", { | ||
| 80 | page: this.cur | ||
| 81 | }); | ||
| 82 | }, | ||
| 83 | initData() {} | ||
| 84 | }, | ||
| 85 | mounted() {}, | ||
| 86 | created() {} | ||
| 87 | } |
src/components/pagination/pagination.scss
0 → 100644
| 1 | @import '@/styles/_support'; | ||
| 2 | |||
| 3 | .comp { | ||
| 4 | // display: flex; | ||
| 5 | } | ||
| 6 | |||
| 7 | .pagination { | ||
| 8 | display: flex; | ||
| 9 | justify-content: center; | ||
| 10 | align-items: center; | ||
| 11 | |||
| 12 | span { | ||
| 13 | margin: 0 0.7rem; | ||
| 14 | text-align: center; | ||
| 15 | } | ||
| 16 | |||
| 17 | .page-num { | ||
| 18 | width: 1.75rem; | ||
| 19 | height: 1.75rem; | ||
| 20 | border: solid 1px #dcdddd; | ||
| 21 | text-align: center; | ||
| 22 | cursor: pointer; | ||
| 23 | } | ||
| 24 | |||
| 25 | .page-num:hover { | ||
| 26 | color: #ffffff; | ||
| 27 | background-color: #006441; | ||
| 28 | } | ||
| 29 | |||
| 30 | } | ||
| 31 | |||
| 32 | .disabled { | ||
| 33 | color: #888888; | ||
| 34 | } | ||
| 35 | |||
| 36 | .active { | ||
| 37 | color: #ffffff; | ||
| 38 | background-color: #006441; | ||
| 39 | } | ||
| 40 | |||
| 41 | |||
| 42 | .ipt { | ||
| 43 | @extend .bb; | ||
| 44 | width: 3.5rem; | ||
| 45 | border: solid 1px #dcdddd; | ||
| 46 | padding: 0 .7rem; | ||
| 47 | } | ||
| 48 | |||
| 49 | .jump { | ||
| 50 | color: #006441; | ||
| 51 | text-decoration: underline; | ||
| 52 | } |
src/components/pagination/pagination.vue
0 → 100644
| 1 | |||
| 2 | <template> | ||
| 3 | <div class="comp"> | ||
| 4 | <div class="pagination"> | ||
| 5 | <span class="pointer" :class="{'disabled' : cur == 1}"> | ||
| 6 | <a @click="prevPage()">上一页</a> | ||
| 7 | </span> | ||
| 8 | <span @click="selPage(index)" class="page-num pointer" v-for="(index,idx) in indexs" :key="idx" v-bind:class="{ 'active': cur == index}"> | ||
| 9 | <a>{{index}}</a> | ||
| 10 | </span> | ||
| 11 | <span class="pointer" :class="{'disabled' : cur == total}"> | ||
| 12 | <a @click="nextPage()">下一页</a> | ||
| 13 | </span> | ||
| 14 | <span>第</span> | ||
| 15 | <input v-model="sel" class="ipt" :placeholder="cur" type="text"> | ||
| 16 | <span>/ {{total}}页</span> | ||
| 17 | <span @click="jumpPage" class="jump pointer">跳转</span> | ||
| 18 | </div> | ||
| 19 | </div> | ||
| 20 | </template> | ||
| 21 | |||
| 22 | <script src="./pagination.js"></script> | ||
| 23 | <style lang="scss" scoped> | ||
| 24 | @import "./pagination.scss"; | ||
| 25 | </style> |
| ... | @@ -32,9 +32,6 @@ | ... | @@ -32,9 +32,6 @@ |
| 32 | 32 | ||
| 33 | .btn { | 33 | .btn { |
| 34 | position: absolute; | 34 | position: absolute; |
| 35 | // width: 13.5rem; | ||
| 36 | // height: 4.1rem; | ||
| 37 | // top: 30.2rem; | ||
| 38 | width: 52%; | 35 | width: 52%; |
| 39 | height: 11%; | 36 | height: 11%; |
| 40 | top: 81%; | 37 | top: 81%; |
| ... | @@ -118,9 +115,9 @@ | ... | @@ -118,9 +115,9 @@ |
| 118 | justify-content: space-between; | 115 | justify-content: space-between; |
| 119 | align-items: center; | 116 | align-items: center; |
| 120 | border-top: solid 1px #dcdddd; | 117 | border-top: solid 1px #dcdddd; |
| 118 | cursor: pointer; | ||
| 121 | 119 | ||
| 122 | &-tit { | 120 | &-tit { |
| 123 | cursor: pointer; | ||
| 124 | } | 121 | } |
| 125 | 122 | ||
| 126 | &-date {} | 123 | &-date {} | ... | ... |
| ... | @@ -24,7 +24,6 @@ | ... | @@ -24,7 +24,6 @@ |
| 24 | <img src="@/assets/images/index/recommend-2.png"> | 24 | <img src="@/assets/images/index/recommend-2.png"> |
| 25 | </div> | 25 | </div> |
| 26 | <div class="recommend-item"> | 26 | <div class="recommend-item"> |
| 27 | <!-- {{t}} --> | ||
| 28 | <div class="btn"></div> | 27 | <div class="btn"></div> |
| 29 | <img src="@/assets/images/index/recommend-3.png"> | 28 | <img src="@/assets/images/index/recommend-3.png"> |
| 30 | </div> | 29 | </div> |
| ... | @@ -32,7 +31,7 @@ | ... | @@ -32,7 +31,7 @@ |
| 32 | <!-- 了解我们 --> | 31 | <!-- 了解我们 --> |
| 33 | <div class="box more"> | 32 | <div class="box more"> |
| 34 | <div class="cont"> | 33 | <div class="cont"> |
| 35 | <div class="btn"></div> | 34 | <div class="btn pointer"></div> |
| 36 | <img src="@/assets/images/index/more-1.png"> | 35 | <img src="@/assets/images/index/more-1.png"> |
| 37 | </div> | 36 | </div> |
| 38 | </div> | 37 | </div> |
| ... | @@ -42,7 +41,7 @@ | ... | @@ -42,7 +41,7 @@ |
| 42 | <div class="tit">新聞資訊</div> | 41 | <div class="tit">新聞資訊</div> |
| 43 | <div class="under-line"></div> | 42 | <div class="under-line"></div> |
| 44 | <div class="news-wrap"> | 43 | <div class="news-wrap"> |
| 45 | <div class="more"> | 44 | <div class="more pointer"> |
| 46 | 查看更多 > | 45 | 查看更多 > |
| 47 | </div> | 46 | </div> |
| 48 | <div @click="toNewsDetail()" class="news-item"> | 47 | <div @click="toNewsDetail()" class="news-item"> | ... | ... |
| ... | @@ -4,16 +4,33 @@ import { | ... | @@ -4,16 +4,33 @@ import { |
| 4 | httpPost | 4 | httpPost |
| 5 | } from '@/api/fetch-api.js' | 5 | } from '@/api/fetch-api.js' |
| 6 | 6 | ||
| 7 | import Pagination from '@/components/pagination/pagination.vue' | ||
| 8 | |||
| 7 | export default { | 9 | export default { |
| 10 | name: "newsList", | ||
| 11 | components: { | ||
| 12 | Pagination | ||
| 13 | }, | ||
| 8 | data() { | 14 | data() { |
| 9 | return { | 15 | return { |
| 10 | key: 'value' | 16 | key: 'value', |
| 17 | items: [] | ||
| 11 | } | 18 | } |
| 12 | }, | 19 | }, |
| 13 | components: {}, | ||
| 14 | methods: { | 20 | methods: { |
| 15 | initData() {} | 21 | selPage(val) { |
| 22 | let { | ||
| 23 | page | ||
| 24 | } = val; | ||
| 25 | console.log("page:", page); | ||
| 26 | }, | ||
| 27 | initData() { | ||
| 28 | // 初始化数据 | ||
| 29 | this.items = new Array(12); | ||
| 30 | } | ||
| 16 | }, | 31 | }, |
| 17 | mounted() {}, | 32 | mounted() {}, |
| 18 | created() {} | 33 | created() { |
| 34 | this.initData(); | ||
| 35 | } | ||
| 19 | } | 36 | } | ... | ... |
| ... | @@ -5,6 +5,14 @@ | ... | @@ -5,6 +5,14 @@ |
| 5 | min-height: 50rem; | 5 | min-height: 50rem; |
| 6 | } | 6 | } |
| 7 | 7 | ||
| 8 | .top-space { | ||
| 9 | height: 2rem; | ||
| 10 | } | ||
| 11 | |||
| 12 | .box{ | ||
| 13 | position: relative; | ||
| 14 | } | ||
| 15 | |||
| 8 | .ebg { | 16 | .ebg { |
| 9 | position: absolute; | 17 | position: absolute; |
| 10 | bottom: 0; | 18 | bottom: 0; |
| ... | @@ -13,8 +21,53 @@ | ... | @@ -13,8 +21,53 @@ |
| 13 | 21 | ||
| 14 | } | 22 | } |
| 15 | 23 | ||
| 16 | .box {} | ||
| 17 | |||
| 18 | .news { | 24 | .news { |
| 19 | &-item {} | 25 | color: #4c4948; |
| 26 | margin: 0 auto; | ||
| 27 | width: 66.75rem; | ||
| 28 | |||
| 29 | |||
| 30 | |||
| 31 | &-item { | ||
| 32 | |||
| 33 | display: flex; | ||
| 34 | justify-content: space-between; | ||
| 35 | align-items: center; | ||
| 36 | |||
| 37 | height: 4.25rem; | ||
| 38 | border-bottom: solid 1px #dcdddd; | ||
| 39 | cursor: pointer; | ||
| 40 | |||
| 41 | &-tit { | ||
| 42 | display: flex; | ||
| 43 | align-items: center; | ||
| 44 | |||
| 45 | .point { | ||
| 46 | width: .5rem; | ||
| 47 | height: .5rem; | ||
| 48 | background-color: #4c4948; | ||
| 49 | margin: 0 1.75rem; | ||
| 50 | } | ||
| 51 | |||
| 52 | .new { | ||
| 53 | margin: 0 1rem; | ||
| 54 | } | ||
| 55 | } | ||
| 56 | |||
| 57 | &-date { | ||
| 58 | margin-right: 1rem; | ||
| 59 | } | ||
| 60 | |||
| 61 | &:last-child { | ||
| 62 | border-bottom: none; | ||
| 63 | } | ||
| 64 | |||
| 65 | } | ||
| 66 | |||
| 67 | |||
| 68 | } | ||
| 69 | |||
| 70 | |||
| 71 | .pagination { | ||
| 72 | padding: 2.25rem 0; | ||
| 20 | } | 73 | } | ... | ... |
| ... | @@ -7,8 +7,16 @@ | ... | @@ -7,8 +7,16 @@ |
| 7 | <div class="top-space"></div> | 7 | <div class="top-space"></div> |
| 8 | <div class="box"> | 8 | <div class="box"> |
| 9 | <div class="news"> | 9 | <div class="news"> |
| 10 | <div class="news-item"></div> | 10 | <div v-for="(item,index) in items" :key="index" class="news-item"> |
| 11 | <div class="news-item-tit"> | ||
| 12 | <div class="point"></div> | ||
| 13 | 平安人壽2019年2季度保險消費報告出爐! | ||
| 14 | <img class="new" src="@/assets/images/news-list/news-list-new.png"> | ||
| 15 | </div> | ||
| 16 | <div class="news-item-date">2019-09-27</div> | ||
| 17 | </div> | ||
| 11 | </div> | 18 | </div> |
| 19 | <pagination @selpage="selPage" :total="23" class="pagination"></pagination> | ||
| 12 | </div> | 20 | </div> |
| 13 | </div> | 21 | </div> |
| 14 | </template> | 22 | </template> | ... | ... |
| ... | @@ -14,3 +14,25 @@ | ... | @@ -14,3 +14,25 @@ |
| 14 | border-bottom: none; | 14 | border-bottom: none; |
| 15 | @include border-top-radius(.75rem) | 15 | @include border-top-radius(.75rem) |
| 16 | } | 16 | } |
| 17 | |||
| 18 | .payment { | ||
| 19 | &-nav { | ||
| 20 | display: flex; | ||
| 21 | justify-content: space-between; | ||
| 22 | |||
| 23 | &-item { | ||
| 24 | @extend .pointer; | ||
| 25 | @include border-top-radius(.5rem); | ||
| 26 | display: flex; | ||
| 27 | justify-content: center; | ||
| 28 | align-items: center; | ||
| 29 | height: 3.75rem; | ||
| 30 | padding: 0 2rem; | ||
| 31 | background-color: #f2f2f2; | ||
| 32 | |||
| 33 | &-icon { | ||
| 34 | margin-right: .4rem; | ||
| 35 | } | ||
| 36 | } | ||
| 37 | } | ||
| 38 | } | ... | ... |
| ... | @@ -6,6 +6,22 @@ | ... | @@ -6,6 +6,22 @@ |
| 6 | <div class="payment"> | 6 | <div class="payment"> |
| 7 | <div class="payment-nav"> | 7 | <div class="payment-nav"> |
| 8 | <div class="payment-nav-item"> | 8 | <div class="payment-nav-item"> |
| 9 | <img class="payment-nav-item-icon" src="@/assets/images/payment-type/icon-payment-1.png">親臨客服中心付款 | ||
| 10 | </div> | ||
| 11 | <div class="payment-nav-item"> | ||
| 12 | <img class="payment-nav-item-icon" src="@/assets/images/payment-type/icon-payment-1.png">网银付款 | ||
| 13 | </div> | ||
| 14 | <div class="payment-nav-item"> | ||
| 15 | <img class="payment-nav-item-icon" src="@/assets/images/payment-type/icon-payment-1.png">电汇付款 | ||
| 16 | </div> | ||
| 17 | <div class="payment-nav-item"> | ||
| 18 | <img class="payment-nav-item-icon" src="@/assets/images/payment-type/icon-payment-1.png">柜员机付款 | ||
| 19 | </div> | ||
| 20 | <div class="payment-nav-item"> | ||
| 21 | <img class="payment-nav-item-icon" src="@/assets/images/payment-type/icon-payment-1.png">「缴费灵」付款 | ||
| 22 | </div> | ||
| 23 | <div class="payment-nav-item"> | ||
| 24 | <img class="payment-nav-item-icon" src="@/assets/images/payment-type/icon-payment-1.png">香港邮政局 | ||
| 9 | </div> | 25 | </div> |
| 10 | </div> | 26 | </div> |
| 11 | </div> | 27 | </div> | ... | ... |
-
Please register or sign in to post a comment