const state = { list: [], unread_count: 0, last_unread_item: {"avatar":"","user_id":"","nickname":""}, settings: {bg:""} }; const mutations = { SET_LIST(state, list) { state.list = [...list]; }, SET_UNREAD_COUNT(state, count) { state.unread_count = count; if(count<1){ uni.removeTabBarBadge({ index:2 }) }else{ uni.setTabBarBadge({ index:2, text:count }) } }, SET_LAST_UNREAD(state, data) { state.last_unread_item = {...data}; }, SET_SETTINGS(state, data) { state.settings = {...data}; }, }; const actions = { async getFriendCircleList({ commit},params) { uni.$u.http.get('/friendcircle/list',params).then(res=>{ commit("SET_LIST", res.data); }).catch(e=>{ console.log(e); uni.$u.toast("获取信息失败"); }) }, async getFriendCircleInfo({ commit, state}) { uni.$u.http.get('/friendcircle/info').then(data=>{ commit("SET_UNREAD_COUNT", data.count); commit("SET_LAST_UNREAD", data.last_unread_item); commit("SET_SETTINGS", data.settings); }).catch(e=>{ uni.$u.toast("获取信息失败"); }) }, async comment({ commit, state},params) { return new Promise((resolve,reject)=>{ uni.$u.http.post('/friendcircle/comment',params).then(data=>{ console.log("评论成功",data); let index = -1; for(let i=0;i{ console.log("评论失败",e); uni.$u.toast("评论失败"); reject(e); }) }) }, async like({commit, state},params) { return new Promise((resolve,reject)=>{ uni.$u.http.post('/friendcircle/like',params).then(data=>{ console.log("点赞成功",data); let index = -1; for(let i=0;i{ console.log("点赞失败",e); uni.$u.toast("点赞失败"); reject(e); }) }) }, async updateUnreadCount({commit,state},v) { commit("SET_UNREAD_COUNT", state.unread_count+v); }, }; export default { namespaced: true, state, mutations, actions, };