添加取消收藏功能

This commit is contained in:
2026-07-03 10:35:34 +08:00
parent 31fb6bf246
commit ec64759ed8
2 changed files with 34 additions and 3 deletions
+24
View File
@@ -38,4 +38,28 @@ export const BilibiliClientVideoActionMethods = {
return false; return false;
} }
}, },
// 取消收藏视频从默认收藏夹
async unstarVideoFromDefaultFavFolderByBVID(this: any, bvid: string): Promise<any> {
let defaultFolderID = 0;
const folders = await this.getUserFavouriteFolders(this.accountInfo.mid);
folders.list.forEach((folder: any) => {
if (folder.title === "默认收藏夹") {
defaultFolderID = folder.id;
}
});
if (!defaultFolderID) return false;
try {
const videoInfo = await this.getVideoInfoByBVID(bvid);
const aid = videoInfo.aid;
const url = `https://api.bilibili.com/x/v3/fav/resource/deal`;
const data = `rid=${aid}&csrf=${this.biliJct}&type=2&add_media_ids=&del_media_ids=${defaultFolderID}`;
const response = await this.postRequest(url, data, "application/x-www-form-urlencoded");
return response.data.code;
} catch (error) {
global.logger.error("Error unstarring video: ", error);
return false;
}
},
} }
+10 -3
View File
@@ -220,9 +220,16 @@ export default {
}) })
}, },
async AddToFav() { async AddToFav() {
const result = await global.biliclient.starVideoToDefaultFavFolderByBVID(this.bvid) let result;
const message = result ? "收藏失败,请重试,或重新登录后再试" : "收藏成功" if (this.stared) {
prompt.showToast({message}) result = await global.biliclient.unstarVideoFromDefaultFavFolderByBVID(this.bvid)
const message = result === 0 ? "取消收藏成功" : "取消收藏失败,请重试,或重新登录后再试"
prompt.showToast({message})
} else {
result = await global.biliclient.starVideoToDefaultFavFolderByBVID(this.bvid)
const message = result === 0 ? "收藏成功" : "收藏失败,请重试,或重新登录后再试"
prompt.showToast({message})
}
this.UpdateVideoToolbarStatus() this.UpdateVideoToolbarStatus()
}, },
async GenBlur(evt) { async GenBlur(evt) {