diff --git a/index.html b/index.html
index cc981c6..7a09c3a 100644
--- a/index.html
+++ b/index.html
@@ -313,6 +313,19 @@
console.error("Get Toplist Songs failed", e);
return [];
}
+ },
+ getPlaylist: async (id, source = 'netease') => {
+ try {
+ const res = await fetch(`${API_BASE}/api/?type=playlist&id=${id}&source=${source}`);
+ const data = await res.json();
+ if (data.code === 200 && data.data && Array.isArray(data.data.list)) {
+ return data.data.list;
+ }
+ return [];
+ } catch (e) {
+ console.error("Get playlist failed", e);
+ return [];
+ }
}
};
@@ -418,7 +431,7 @@
);
- const SideDrawer = ({ isOpen, onClose, view, setView, quality, setQuality, onClearCache, syncToken, setSyncToken, onSyncNow }) => {
+ const SideDrawer = ({ isOpen, onClose, view, setView, quality, setQuality, onClearCache, syncToken, setSyncToken, onSyncNow, onImportNetease, syncMode }) => {
const [isSyncing, setIsSyncing] = useState(false);
const [syncMsg, setSyncMsg] = useState('');
@@ -437,6 +450,19 @@
}
};
+ const handleNeteaseImportClick = () => {
+ const url = prompt("请输入网易云歌单分享链接\n(例如: https://music.163.com/playlist?id=...)");
+ if (url) {
+ const match = url.match(/[?&]id=(\d+)/);
+ if (match && match[1]) {
+ onImportNetease(match[1]);
+ onClose();
+ } else {
+ alert("无法识别歌单ID,请确保链接包含 id=数字");
+ }
+ }
+ };
+
if (!isOpen) return null;
return (
@@ -484,7 +510,9 @@
-
+
-
使用相同的密钥在多端同步收藏列表
+
+ {syncMode === 'netease_playlist'
+ ? '当前为网易云歌单同步模式,每15分钟自动刷新'
+ : '使用相同的密钥在多端同步收藏列表'}
+
{syncMsg &&
{syncMsg}}
+
+
+
导入后将开启自动同步,每15分钟获取新歌
+
+