From ad213143dabbed3a225a9da5e6594c1c6eef3c81 Mon Sep 17 00:00:00 2001 From: xuhuajiao <13476289682@163.com> Date: Thu, 29 Sep 2022 11:07:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E4=B9=A6=E6=8E=A8=E8=8D=90/=E7=83=AD?= =?UTF-8?q?=E9=97=A8=E5=9B=BE=E4=B9=A6=E6=B7=BB=E5=8A=A0=E6=BB=9A=E5=8A=A8?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/data.json | 55 ----------- src/views/data1.json | 166 ---------------------------------- src/views/hotBook.vue | 32 +------ src/views/index.vue | 4 +- src/views/mixins/booklist.js | 93 +++++++++++++++++++ src/views/module/bookList.vue | 50 +++------- src/views/newBook.vue | 31 +------ 7 files changed, 116 insertions(+), 315 deletions(-) delete mode 100644 src/views/data.json delete mode 100644 src/views/data1.json create mode 100644 src/views/mixins/booklist.js diff --git a/src/views/data.json b/src/views/data.json deleted file mode 100644 index 43af638..0000000 --- a/src/views/data.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "bookList":[ - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定1", - "ranking": 1, - "num": 2000 - }, - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定2", - "ranking": 2, - "num": 1200 - }, - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定3", - "ranking": 3, - "num": 1100 - } - ], - "newList":[ - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定1", - "ranking": 1, - "num": 2000 - }, - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定2", - "ranking": 2, - "num": 1200 - }, - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定3", - "ranking": 3, - "num": 1100 - }, - { - "cover":"https://qiniu.aiyxlib.com/bg.png", - "nbName": "大个子狗与小个子猫", - "nbAuthor": "高小定4", - "ranking": 4, - "num": 1100 - } - ] -} \ No newline at end of file diff --git a/src/views/data1.json b/src/views/data1.json deleted file mode 100644 index 58be3e8..0000000 --- a/src/views/data1.json +++ /dev/null @@ -1,166 +0,0 @@ -{ - "listData":[ - [ - { - "id":1 - } - ], - { "id": 2 }, - { "id": 3 }, - { "id": 4 }, - { "id": 5 } - ], - "bookList":[ - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定1", - "ranking": 1, - "num": 2000 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定2", - "ranking": 2, - "num": 1200 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定3", - "ranking": 3, - "num": 1100 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定1", - "ranking": 1, - "num": 2000 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定2", - "ranking": 2, - "num": 1200 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定3", - "ranking": 3, - "num": 1100 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定1", - "ranking": 1, - "num": 2000 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定2", - "ranking": 2, - "num": 1200 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定3", - "ranking": 3, - "num": 1100 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定2", - "ranking": 2, - "num": 1200 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定3", - "ranking": 3, - "num": 1100 - } - ], - "srcList":[ - { - "title":"武汉云阅读", - "bgImg":"http://192.168.99.84:8080/numresurces/getImgFromByte.do?nrsId=4028e3d48354830301835a16da710000" - }, - { - "title":"在线书城", - "bgImg":"http://192.168.99.84:8080/numresurces/getImgFromByte.do?nrsId=4028e3d48354830301835a1a50720001" - }, - { - "title":"武汉微刊", - "bgImg":"http://192.168.99.84:8080/numresurces/getImgFromByte.do?nrsId=4028e3d48354830301835a1b1d9e0002" - }, - { - "title":"图书馆公开课", - "bgImg":"http://192.168.99.84:8080/numresurces/getImgFromByte.do?nrsId=4028e3d48354830301835a1bf2870003" - } - ], - "authors":[ - { - "name":"钱钟书", - "brief":"钱钟书(1910年11月21日—1998年12月19日),江苏无锡人,原名仰先,字哲良,后改名钟书,字默存,号槐聚,曾用笔名中书君,中国现代作家、文学研究家。代表作:《围城》《管锥编》《谈艺录》《写在人生边上》《人·兽·鬼》" - }, - { - "name":"钱钟书", - "brief":"钱钟书(1910年11月21日—1998年12月19日),江苏无锡人,原名仰先,字哲良,后改名钟书,字默存,号槐聚,曾用笔名中书君,中国现代作家、文学研究家。代表作:《围城》《管锥编》《谈艺录》《写在人生边上》《人·兽·鬼》" - }, - { - "name":"钱钟书", - "brief":"钱钟书(1910年11月21日—1998年12月19日),江苏无锡人,原名仰先,字哲良,后改名钟书,字默存,号槐聚,曾用笔名中书君,中国现代作家、文学研究家。代表作:《围城》《管锥编》《谈艺录》《写在人生边上》《人·兽·鬼》" - }, - { - "name":"钱钟书", - "brief":"钱钟书(1910年11月21日—1998年12月19日),江苏无锡人,原名仰先,字哲良,后改名钟书,字默存,号槐聚,曾用笔名中书君,中国现代作家、文学研究家。代表作:《围城》《管锥编》《谈艺录》《写在人生边上》《人·兽·鬼》" - }, - { - "name":"钱钟书", - "brief":"钱钟书(1910年11月21日—1998年12月19日),江苏无锡人,原名仰先,字哲良,后改名钟书,字默存,号槐聚,曾用笔名中书君,中国现代作家、文学研究家。代表作:《围城》《管锥编》《谈艺录》《写在人生边上》《人·兽·鬼》《人·兽·鬼》《人·兽·鬼》《人·兽·鬼》" - } - ], - "rackBook":[ - {"id":100,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":101,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":102,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":103,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":104,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":105,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":106,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":107,"title":"大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":109,"title":"大个子狗与小个子猫大个子狗与小个子猫","author":"高小定","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1010,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1011,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1012,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1013,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1014,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1015,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1016,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1017,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1018,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1019,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1020,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1021,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1022,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1023,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1024,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1025,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1026,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1027,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1028,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1029,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1030,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1031,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"}, - {"id":1032,"title":"书名书名书名","author":"作者","img":"https://qiniu.aiyxlib.com/bg.png"} - ] -} \ No newline at end of file diff --git a/src/views/hotBook.vue b/src/views/hotBook.vue index 3aad29b..a990050 100644 --- a/src/views/hotBook.vue +++ b/src/views/hotBook.vue @@ -6,48 +6,26 @@

热门图书

- + diff --git a/src/views/index.vue b/src/views/index.vue index be28caf..0ff95f8 100644 --- a/src/views/index.vue +++ b/src/views/index.vue @@ -15,7 +15,7 @@

图书检索

-
  • +
  • 热门图书

  • @@ -54,7 +54,7 @@

    新书推荐

    - 更多 + 更多 diff --git a/src/views/mixins/booklist.js b/src/views/mixins/booklist.js new file mode 100644 index 0000000..6163527 --- /dev/null +++ b/src/views/mixins/booklist.js @@ -0,0 +1,93 @@ +import { FetchHotBookRecommend, FetchNewBookRecommend, FetchCoverByISBN, getBookDetailsByISBN } from '@/api/bookshelf' +export const bookListCrud = { + // 组件共用属性 + data() { + return { + defaultImg: 'this.src="' + require('@/assets/images/default-img.png') + '"', + bookData: [], + page: 1, + pageSize: 9, + pageCount: 1 + } + }, + computed: { + bookList() { + const arr = this.bookData.slice(1) + return arr + } + }, + // 组件共用方法 + methods: { + // 获取热门/新书图书list + getBookData() { + const bookType = this.$route.query.bookType + const params = { + libcode: this.libcode, + pageNo: this.page, + pageSize: this.pageSize + } + if (bookType === 'hot') { + FetchHotBookRecommend(params).then(res => { + this.pageCount = res.page.totalPages + res.hotbookList.forEach(item => { + this.getCoverByISBN(item.isbn.replace(/\-/g, ''), item) + }) + }).catch(() => { + this.$message.error('接口错误') + }) + } else { + FetchNewBookRecommend(params).then(res => { + res.newbookList.forEach(item => { + this.getCoverByISBN(item.isbn.replace(/\-/g, ''), item) + }) + }).catch(() => { + this.$message.error('接口错误') + }) + } + }, + // 根据isbn查找封面 + getCoverByISBN(isbn, item) { + const params = { + isbn: isbn + } + FetchCoverByISBN(params).then((res) => { + item.cover = window.URL.createObjectURL(res) + this.bookData.push(item) + }) + }, + // 滚动加载 + lazyLoading(e) { + const scrollTop = e.target.scrollTop + const windowHeight = e.target.clientHeight + const scrollHeight = e.target.scrollHeight + // 滚动条到底部 + if (scrollTop + windowHeight === scrollHeight) { + this.page++ + if (this.page > this.pageCount) { + this.$message.success('暂无更多数据~') + return + } + this.getBookData() + } + }, + // 点击查看详情 + handleDetails(index) { + const params = { + isbn: this.bookData[index].isbn.replace(/\-/g, '') + } + getBookDetailsByISBN(params).then(res => { + if (res) { + this.$refs.detailDom.bookData = res + this.$refs.detailDom.dialogVisible = true + } else { + this.$message.error('暂无图书内容~') + } + }).catch(() => { + this.$message.error('接口错误') + }) + } + }, + // 组件挂载时的共用方法 + mounted() { + } +} diff --git a/src/views/module/bookList.vue b/src/views/module/bookList.vue index 21c4196..343269c 100644 --- a/src/views/module/bookList.vue +++ b/src/views/module/bookList.vue @@ -1,15 +1,15 @@