2020/9/27 0:00:00
來源:不詳
作者:未知
這部分也是列表樣式,每一項由前面的時鐘圖標,中間的文字以及最后表示刪除的“X”組成,最下方為清空整個列表的選項。
-
<view class="search-hi" wx:if="{{showSearchPanel == 2}}">
-
<block wx:if="{{historySearchs.length > 0}}">
-
<view class="search-hi-item" wx:for="{{historySearchs}}" wx:key="unique">
-
<view class="hi-icon"></view>
-
<text class="hi-text" data-key="{{item}}" bindtap="historysearchTap">{{item}}</text>
-
<view class="hi-close" data-index="{{index}}" bindtap="delHistoryItem"></view>
-
</view>
-
<view class="clear-serach" bindtap="clearHistorySearchs">清除搜索記錄</view>
-
</block>
-
</view>
復(fù)制代碼

這一部分只有當(dāng)showSearchPanel=2才顯示。
具體的內(nèi)容,我們首先要判斷是否有歷史數(shù)據(jù)。使用historySearchs存儲所以歷史記錄,只有當(dāng)其長度大于0時,才渲染這一部分。
block里的內(nèi)容就如我們所要的一致,然后我們?yōu)槲淖?,結(jié)尾的“X”標志,和最后的“清除搜索記錄”添加點擊事件。
格式文件為:
-
.search-hi-item {
-
height:88rpx;
-
line-height:88rpx;
-
border-bottom:2rpx solid #ededed;
-
}
-
.hi-icon {
-
position:absolute;
-
left:20rpx;
-
display:inline-block;
-
width:88rpx;
-
height:88rpx;
-
background:url('../../resources/images/clock_ic.png') no-repeat center center;
-
background-size:40rpx;
-
}
-
.hi-text {
-
position:absolute;
-
left:108rpx;
-
right:108rpx;
-
display:block;
-
white-space:nowrap;
-
text-overflow:ellipsis;
-
overflow:hidden;
-
font-size:32rpx;
-
}
-
.hi-close {
-
width:88rpx;
-
height:88rpx;
-
position:absolute;
-
right:20rpx;
-
background:url('../../resources/images/cancel.png') no-repeat center center;
-
}
-
.clear-serach {
-
font-size:24rpx;
-
text-align:center;
-
color:#47c88a;
-
line-height:88rpx;
-
}
復(fù)制代碼
background里加載了分別加載了兩個本地圖片并為其設(shè)置了不平鋪與居中的屬性。
很顯然,在我們每次點擊確定按鈕后,輸入框內(nèi)的值除了發(fā)送到服務(wù)器請求搜索結(jié)果,還要添加到historySearchs里。
所以我們先寫搜索結(jié)果列表,然后一起處理確定按鈕的點擊事件。
首先是網(wǎng)絡(luò)請求的函數(shù):
-
function getSearchMusic(word,callback){ //word為傳入的關(guān)鍵字,callback為回調(diào)函數(shù)
-
var data = {
-
g_tk: 5381,
-
uin: 0,
-
format: 'json',
-
inCharset: 'utf-8',
-
outCharset: 'utf-8',
-
notice: 0,
-
platform: 'h5',
-
needNewCode: 1,
-
w: word,
-
zhidaqu: 1,
-
catZhida: 1,
-
t: 0,
-
flag: 1,
-
ie: 'utf-8',
-
sem: 1,
-
aggr: 0,
-
perpage: 20,
-
n: 20,
-
p: 1,
-
remoteplace: 'txt.mqq.all',
-
_: Date.now()
-
};
-
wx.request({
-
url: 'http://c.y.qq.com/soso/fcgi-bin/search_for_qq_cp',
-
data: data,
-
header: {
-
'Content-Type': 'application/json'
-
},
-
success: function (res) {
-
if (res.statusCode == 200) {
-
callback(res.data);
-
} else {
-
-
}
-
-
}
-
});
-
}
-
...
-
module.exports = {
-
...
-
getSearchMusic:getSearchMusic
-
}
復(fù)制代碼
返回的JSON數(shù)據(jù)為:
-
{
-
"code": 0,
-
"data": {
-
"keyword": "那片星空那片海 ",
-
"priority": 0,
-
"qc": [],
-
"semantic": {
-
"curnum": 0,
-
"curpage": 1,
-
"list": [],
-
"totalnum": 0
-
},
-
"song": {
-
"curnum": 6,
-
"curpage": 1,
-
"list": [
-
{
-
"albumid": 1829165,
-
"albummid": "000cvc411fKPIC",
-
"albumname": "那片星空那片海 電視原聲帶",
-
"albumname_hilight": "<span class=\"c_tx_highlight\">那片星空那片海</span> 電視原聲帶",
-
"alertid": 100007,
-
"chinesesinger": 0,
-
"docid": "8313377529987609872",
-
"format": "qqhq;common;mp3common;wmacommon",
-
"grp": [],
-
"interval": 227,
-
"isonly": 1,
-
"lyric": "《那片星空那片?!冯娨晞∑^曲",
-
&nnbsp; "lyric_hilight": "《<span class=\"c_tx_highlight\">那片星空那片海</span>》電視劇<span class=\"c_tx_highlight\">片</span>頭曲",
-
"msgid": 13,
-
"nt": 3247935513,
-
"pay": {
-
"payalbum": 1,
-
"payalbumprice": 500,
-
"paydownload": 1,
-
"payinfo": 1,
-
"payplay": 1,
-
"paytrackmouth": 0,
-
"paytrackprice": 0
-
},
-
"preview": {
-
"trybegin": 0,
-
"tryend": 0,
-
"trysize": 0
-
},
-
"pubtime": 1486483200,
-
"pure": 0,
-
"singer": [
-
{
-
"id": 12111,
-
"mid": "004YXxql1sSr2o",
-
"name": "金志文",
-
"name_hilight": "金志文"
-
}
-
],
-
"size128": 3649005,
-
"size320": 9122181,
-
"sizeape": 23599481,
-
"sizeflac": 23676261,
-
"sizeogg": 4916985,
-
"songid": 200552006,
-
"songmid": "001lggCh2Nw7us",
-
"songname": "那片星空那片海",
-
"songname_hilight": "<span class=\"c_tx_highlight\">那片星空那片海</span>",
-
"songurl": "http://y.qq.com/#type=song&id=200552006",
-
"stream": 5,
-
"switch": 594177,
-
"t": 0,
-
"tag": 10,
-
"type": 0,
-
"ver": 0,
-
"vid": ""
-
},
-
...
-
],
-
"totalnum": 6
-
},
-
"totaltime": 0,
-
"zhida": {
-
"albumid": 1829165,
-
"albummid": "000cvc411fKPIC",
-
"albumname": "那片星空那片海 電視原聲帶",
-
"singername": "華語群星",
-
"type": 3
-
}
-
},
-
"message": "",
-
"notice": "",
-
"subcode": 0,
-
"time": 1487063618,
-
"tips": ""
-
}
復(fù)制代碼
有了數(shù)據(jù)之后,我們需要在列表里顯示的內(nèi)容為歌曲名稱(songname)與歌手名稱(singer.name)。
上一節(jié):微信小程序小白項目開發(fā)案例之音樂播放器—檢索頁(上)
下一節(jié):微信小程序小白項目開發(fā)案例之音樂播放器—檢索頁(下)
【本站聲明】
1、本站文章中所選用的圖片及文字來源于網(wǎng)絡(luò)以及用戶投稿,由于未聯(lián)系到知識產(chǎn)權(quán)人或未發(fā)現(xiàn)有關(guān)知識產(chǎn)權(quán)的登記,如有知識產(chǎn)權(quán)人并不愿意我們使用,如果有侵權(quán)請立即聯(lián)系。
2、本網(wǎng)站不對文章中所涉及的內(nèi)容真實性、準確性、可靠性負責(zé),僅系客觀性描述,如您需要了解該類商品/服務(wù)詳細的資訊,請您直接與該類商品/服務(wù)的提供者聯(lián)系。
KESION 科汛軟件
KESION 科汛軟件是國內(nèi)領(lǐng)先的在線教育軟件及私域社交電商軟件服務(wù)提供商,長期專注于為企業(yè)提供在線教育軟件及社交電商SaaS平臺解決方案。
公司核心產(chǎn)品云開店SaaS社交電商服務(wù)平臺、在線教育SaaS服務(wù)平臺、教育企業(yè)數(shù)字化SaaS云平臺、企微營銷助手、私有化獨立部署品牌網(wǎng)校和在線教育咨詢等。KESION 不斷通過技術(shù)創(chuàng)新,提供產(chǎn)品和服務(wù),助力企業(yè)向數(shù)字化轉(zhuǎn)型,通過科技驅(qū)動商業(yè)革新,讓商業(yè)變得更智慧!