关于搜索歌曲的id不匹配
来源:3-17 高亮显示当前选中歌曲
慕姐7077867
2022-04-22
老师,我发现一个问题。在搜索歌曲的页面我调用了musiclist组件,这个组件在歌单音乐列表里是能够显示出所有信息的,可以正常使用。但是我在搜索页面调用musiclist组件时,是有问题的:只能显示歌曲名称,序号+1,歌手名字、专辑名字都没显示。且在播放时,也能够正常播放,但是播放页的歌曲名称、封面图片与搜索结果是不一致的。为什么会这样呢?
<!--pages/search/search.wxml-->
<view class="container">
<view class="header">
<!-- 搜索组件 -->
<view class="search-container">
<x-search iconfont="iconfont" icon-sousuo="icon-sousuo" bind:search="onSearch" />
</view>
</view>
</view>
<!-- 歌曲列表组件 -->
<x-musiclist musiclist="{{musiclist}}" />
// pages/search/search.js
let keyword = ''
Page({
/**
* 页面的初始数据
*/
data: {
musiclist: [], //歌曲
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
//搜索歌曲功能
onSearch(event){
console.log(event.detail.keyword)
this.setData({
musiclist: []
})
keyword = event.detail.keyword
this._getSearch(0)
},
//获取搜索结果
_getSearch(){
wx.showLoading({
title: '搜索中',
})
wx.cloud.callFunction({
name: 'music',
data: {
keyword,
$url: 'search',
}
}).then((res) => {
console.log(res)
this.setData({
musiclist: res.result.result.songs
})
wx.hideLoading()
wx.stopPullDownRefresh()
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})
写回答
1回答
-
谢成
2022-04-24
可以对比一下 正常播放的歌曲对象 和 搜索出来的歌曲对象 ,两个对象的属性名称是否是一致的,说不定属性名称是不一样的。
012022-05-15