修复搜索提示失效的问题

pull/96/head
lyswhut 2019-10-25 21:36:07 +08:00
parent 0d612bd6df
commit fe44581a61
2 changed files with 15 additions and 18 deletions

View File

@ -2,3 +2,7 @@
- 新增窗口大小设置,若觉得软件窗口小可以到设置页调大点 - 新增窗口大小设置,若觉得软件窗口小可以到设置页调大点
- 新增定位当前播放歌曲,点击播放栏左侧的**歌曲图片**可在播放列表定位当前播放的歌曲(该功能对播放下载列表的歌曲无效) - 新增定位当前播放歌曲,点击播放栏左侧的**歌曲图片**可在播放列表定位当前播放的歌曲(该功能对播放下载列表的歌曲无效)
#### 修复
- 修复搜索提示失效的问题

View File

@ -1,25 +1,21 @@
import { httpGet, cancelHttp } from '../../request' import { httpFetch } from '../../request'
import { decodeName } from '../../index' import { decodeName } from '../../index'
export default { export default {
regExps: { regExps: {
relWord: /RELWORD=(.+)/, relWord: /RELWORD=(.+)/,
}, },
_musicTempSearchRequestObj: null, requestObj: null,
_musicTempSearchPromiseCancelFn: null,
tempSearch(str) { tempSearch(str) {
this.cancelTempSearch() this.cancelTempSearch()
return new Promise((resolve, reject) => { this.requestObj = httpFetch(`http://www.kuwo.cn/api/www/search/searchKey?key=${encodeURIComponent(str)}`, {
this._musicTempSearchPromiseCancelFn = reject headers: {
this._musicTempSearchRequestObj = httpGet(`http://www.kuwo.cn/api/www/search/searchKey?key=${encodeURIComponent(str)}`, (err, resp, body) => { Referer: 'http://www.kuwo.cn/',
this._musicTempSearchRequestObj = null },
this._musicTempSearchPromiseCancelFn = null })
if (err) { return this.requestObj.promise.then(({ statusCode, body }) => {
console.log(err) if (statusCode != 200 || body.code !== 200) return Promise.reject(new Error('请求失败'))
reject(err) return body
}
resolve(body)
})
}) })
}, },
handleResult(rawData) { handleResult(rawData) {
@ -29,10 +25,7 @@ export default {
}) })
}, },
cancelTempSearch() { cancelTempSearch() {
if (this._musicTempSearchRequestObj != null) { if (this.requestObj && this.requestObj.cancelHttp) this.requestObj.cancelHttp()
cancelHttp(this._musicTempSearchRequestObj)
this._musicTempSearchPromiseCancelFn(new Error('取消http请求'))
}
}, },
search(str) { search(str) {
return this.tempSearch(str).then(result => this.handleResult(result.data)) return this.tempSearch(str).then(result => this.handleResult(result.data))