Code Monkey home page Code Monkey logo

radishes's Issues

会有iOS版本吗?

大佬,iOS啥音乐软件都没有,大佬能辛苦适配iOS端吗?感谢🙏🏻

关于联系方式

Hi,觉得你们项目挺有意思,最近我也在做这块内容,不过源不大一样,可以加个vx探讨下吗

linux 下编译 electron 版失败

看到 release 没有发布 Linux 包,就想这自己编译一下,但是出错了,node 版本 v16.15.0yarn 版本 1.22.18

失败日志
❯ yarn build:electron:linux
yarn run v1.22.18
$ node script/build.js --linux
4.0.9 4.0.9
 INFO  Bundling render process:

⠧  Building modern bundle for electron.build...

 ERROR  Failed to compile with 22 errors                                                  3:58:41 PM

 error  in ./src/hooks/message.ts

Module parse failed: Unexpected token (11:40)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
| const messageMap = new Map();
| export const suggested = (msg, config) => {
>   const loading = messageMap.get(config?.key);
| 
|   if (loading) {

 @ ./src/hooks/index.ts 4:0-26 4:0-26
 @ ./src/electron/preload/ipc.ts
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/hooks/auth.ts

Module parse failed: Unexpected token (120:12)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|       });
|     } catch (e) {
>       if (e?.response.data.code === -2) {
|         $store.commit('Auth/UPDATE_USER', {
|           key: 'profile',

 @ ./src/hooks/index.ts 3:0-23 3:0-23
 @ ./src/electron/preload/ipc.ts
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/utils/index.ts

Module parse failed: Unexpected token (133:12)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
| };
| export function on(container, type, listener, config) {
>   container?.addEventListener(type, listener, config);
| }
| export function off(container, type, listener) {

 @ ./src/app/index.ts 9:0-43 16:4-14
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/router/index.ts

Module parse failed: Unexpected token (13:15)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|   return nav.filter(n => {
|     if (isBrowser) {
>       return n?.meta?.browser;
|     }
| 

 @ ./src/app/index.ts 3:0-31 12:42-48
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/sidebar/view/index.tsx

Module parse failed: Unexpected token (15:66)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|     const route = useRoute();
|     const playlist = useUserPlayList();
>     const nav = navRouter.filter(routerGroup => !routerGroup.meta?.nonav);
|     return () => createVNode("aside", {
|       "class": "sidebar"

 @ ./src/pages/main/view/index.tsx 3:0-53 22:20-27
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/setting/sage.ts

Module parse failed: Unexpected token (18:23)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|     } = useFooterModule();
|     const footerState = useState();
>     footerState.effect?.clearBasicEffect();
| 
|     if (basic.includes(BasicEffect.D3)) {

 @ ./src/pages/setting/module.ts 1:0-44 11:2-9 12:2-11
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/cloud/sage.ts

Module parse failed: Unexpected token (27:42)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
| 
|   [CloudMutations.UNSHIFT_CLOUD_LIST](state, song) {
>     if (state.cloudList.some(item => item?.uid === song?.uid)) {
|       return;
|     }

 @ ./src/pages/cloud/module.ts 1:0-44 11:2-9 12:2-11
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/auth/component/auth-view/index.tsx

Module parse failed: Unexpected token (34:28)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|           }, null), createVNode("div", {
|             "class": "auth-view__box"
>           }, [slots.default?.()])])]
|         })
|       );

 @ ./src/pages/auth/views/index.tsx 9:0-50 42:49-57
 @ ./src/pages/main/view/index.tsx
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/store/index.ts

Module parse failed: Unexpected token (38:11)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|   const last = origin[origin.length - 1];
| 
>   if (last?.url !== route) {
|     state.historyRoute[originKey].push({
|       life: Date.now(),

 @ ./src/electron/pages/index.ts 7:0-28 11:31-36
 @ multi ./src/electron/pages/index.ts

 error  in ./src/pages/auth/views/reset-pwd.tsx

Module parse failed: Unexpected token (40:25)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|           });
|         }).catch(e => {
>           if (e.response?.data) {
|             setErrorMsg(e.response.data.msg || e.response.data.message || '请求异常');
|           } else if (e.msg) {

 @ ./src/pages/auth/views/index.tsx 6:0-39 12:55-63
 @ ./src/pages/main/view/index.tsx
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/auth/views/signup.tsx

Module parse failed: Unexpected token (41:25)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|           });
|         }).catch(e => {
>           if (e.response?.data) {
|             setErrorMsg(e.response.data.msg || e.response.data.message || '请求异常');
|           } else if (e.msg) {

 @ ./src/pages/auth/views/index.tsx 7:0-34 12:47-53
 @ ./src/pages/main/view/index.tsx
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/auth/views/sms-code.tsx

Module parse failed: Unexpected token (45:25)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|           $router.back();
|         } catch (e) {
>           if (e.response?.data) {
|             setErrorMsg(e.response.data.msg || e.response.data.message || '请求异常');
|           } else if (e.msg) {

 @ ./src/pages/auth/views/index.tsx 11:0-37 12:65-72
 @ ./src/pages/main/view/index.tsx
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/components-global/icon/main/index.tsx

Module parse failed: Unexpected token (46:23)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|       "style": { ...style.value,
|         width: size.value,
>         height: height?.value || size.value,
|         fill: color.value
|       }

 @ ./src/components-global/icon/index.ts 1:0-32 3:0-4 4:16-20 4:27-31 7:15-19
 @ ./src/components-global/index.ts
 @ ./src/electron/pages/index.ts
 @ multi ./src/electron/pages/index.ts

 error  in ./src/pages/auth/views/email-login.tsx

Module parse failed: Unexpected token (49:25)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|           }
|         }).catch(e => {
>           if (e.response?.data) {
|             setErrorMsg(e.response.data.msg || e.response.data.message || '请求异常');
|           } else if (e.msg) {

 @ ./src/pages/auth/views/index.tsx 8:0-43 12:35-45
 @ ./src/pages/main/view/index.tsx
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/header/component/search.tsx

Module parse failed: Unexpected token (54:15)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
| 
|     const handleSelect = () => {
>       onSelect?.value(value?.value);
|     };
| 

 @ ./src/pages/header/view/index.tsx 7:0-45 73:56-62
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/utils/interceptors/timeout.ts

Module parse failed: Unexpected token (5:23)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
| export default function (http) {
|   http.interceptors.response.use(response => response, error => {
>     if (error.response?.status === 408 || error.code === 'ECONNABORTED') {
|       _message.error(`请求超时,请重试。url: ${error.config.url}`, 5);
|     }

 @ ./src/utils/interceptors/index.ts 3:0-32 7:2-9
 @ ./src/utils/http.ts
 @ ./src/api/search.ts
 @ ./src/pages/header/sage.ts
 @ ./src/pages/header/module.ts
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/footer/view/index.tsx

Module parse failed: Unexpected token (65:50)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|       }),
|       "style": {
>         backgroundImage: `url(${footerState.music?.al.picUrl})`
|       },
|       "onClick": unfoldLyrics

 @ ./src/layout/container.tsx 7:0-51 95:20-26
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/auth/views/phone-login.tsx

Module parse failed: Unexpected token (68:25)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|           $router.back();
|         }).catch(e => {
>           if (e.response?.status === 400) {
|             setErrorMsg('该手机号尚未注册');
|           } else if (e.response?.data) {

 @ ./src/pages/auth/views/index.tsx 5:0-43 12:23-33
 @ ./src/pages/main/view/index.tsx
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/api/index.ts

Module parse failed: Unexpected token (6:19)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|     id: Array.isArray(id) ? id.join(',') : id,
|     br: br,
>     source: source?.join(',')
|   });
|   return data.data;

 @ ./src/pages/list/sage.ts 2:0-56 8:23-34 15:23-35
 @ ./src/pages/list/module.ts
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/utils/interceptors/auth.ts

Module parse failed: Unexpected token (7:34)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|     return response;
|   }, error => {
>     const config = error.response?.config;
| 
|     if (error.response) {

 @ ./src/utils/interceptors/index.ts 1:0-26 5:2-6
 @ ./src/utils/http.ts
 @ ./src/api/search.ts
 @ ./src/pages/header/sage.ts
 @ ./src/pages/header/module.ts
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/pages/footer/sage.ts

Module parse failed: Unexpected token (85:42)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|     const len = lyricsArr.length;
|     const lyrices = lyricsArr.map((item, index) => {
>       let nextTime = lyricsArr[index + 1]?.match(/\[.+\]/);
|       let time = item.match(/\[.+\]/);
|       let lyric = item.match(/\].+/);

 @ ./src/pages/footer/module.ts 1:0-53 4:0-40 4:0-40 12:2-9 13:2-9 14:2-11
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 error  in ./src/utils/interceptors/format.ts

Module parse failed: Unexpected token (8:34)
File was processed with these loaders:
 * ./node_modules/cache-loader/dist/cjs.js
 * ./node_modules/babel-loader/lib/index.js
 * ./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js
 * ./node_modules/eslint-loader/index.js
You may need an additional loader to handle the result of these loaders.
|     return new Promise(resolve => {
|       const cb = () => {
>         if (http.defaults.baseURL?.includes('http://localhost:')) {
|           resolve(http.defaults.baseURL);
|         } else {

 @ ./src/utils/interceptors/index.ts 2:0-30 6:2-8
 @ ./src/utils/http.ts
 @ ./src/api/search.ts
 @ ./src/pages/header/sage.ts
 @ ./src/pages/header/module.ts
 @ ./src/modules/index.ts
 @ ./src/layout/container.tsx
 @ ./src/app/app.tsx
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi ./src/main.ts

 ERROR  Vue CLI build failed. Please resolve any issues with your build and try again.
exit: 1
Done in 21.42s.

增加自动缓存的设置

能否增加自动缓存的开关,当自动缓存的开关打开时,能将播放的歌曲自动保存到缓存目录里,这样也可以尽可能的避免短时间内产生大量下载。另外,可否增加缓存时的音质选择,如果是会员登录,可选择保存更高音质的音乐?

cookie在github page中无效

测试发现,无法在github page中发送带有cookie的http请求

表现为:登陆后会一直要求登录,并且每日推荐歌曲和歌单会出现问题

I cant find .exe file

详细描述你的问题
可以描述复现步骤,如果有必要可以携带上截图

系统版本

  • 客户端/网页端: [e.g. 客户端]
  • 客户端版本(如果是) [e.g. 22]
    image

每次都启动都需要重新设置下载保存路径

设置完下载目录以后,下次打开软件就不起作用了,会自动将mp3文件下载到软件安装目录里面,只能每次都重新设置一次才行

-系统版本:Windows 11

  • 客户端版本(如果是) [2.0.0-alpha.4]

歌单无法正常加载吗。

不知道是我这边网络的问题,还是接口的问题;
我这边搜索的歌单, 无法加载出来;
正常歌单里面的也是无法加载;

Windows客户端启动速度

启动速度有点缓慢,没有遇到其他问题,希望更新一下,谢谢

系统版本

  • 客户端/网页端: [e.g. 客户端]
  • 客户端版本(如果是) [e.g. 22]

是否可以添加一阈值功能,根据不同的阈值播放曲歌

如题,也用过很多播放器,基本的使用逻辑是把特别喜欢的歌曲单独加个歌单,然后随机播放这个歌单,但实际都会喜新厌旧吧 哈哈,如果可以为每首歌添加一个阈值,真正使用时也不会每首歌都添加,把最近喜欢的几首加上就行,其它有一个默认值,这样就不能再新加歌单了,随机播放时总会更多的播放阈值高的也就是最近更想听的。

感觉好多歌都找不到链接

详细描述你的问题
感觉好多歌都找不到链接,有的上一秒可以听下一秒就听不了
陶喆的歌基本全部都不能听
播放源也全部勾选了
系统版本

  • 客户端/网页端: [e.g. 客户端]
  • 客户端版本(如果是) [e.g. 22]
    发如雪-周杰伦 2024_6_29 21_20_54
    黑色毛衣-周杰伦 2024_6_29 21_23_20

客户端无法打开悬浮歌词

详细描述你的问题

无法打开悬浮歌词
image

系统版本

  • 客户端/网页端: win11 客户端
  • 客户端版本:2.0.0-alpha.5

Linux 下启动报错

打包后启动报错:

render function
Cannot read properties of undefined (reading 'map')
TypeError: Cannot read properties of undefined (reading 'map')
    at Proxy.eval (webpack:///./src/components/swiper/index.tsx?:119:31)
    at renderComponentRoot (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:851:44)
    at componentEffect (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:4327:53)
    at reactiveEffect (webpack:///./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js?:71:24)
    at effect (webpack:///./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js?:46:9)
    at setupRenderEffect (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:4310:89)
    at mountComponent (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:4269:9)
    at processComponent (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:4229:17)
    at patch (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:3856:21)
    at mountChildren (webpack:///./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js?:4029:13)

设置中点击位置会出现异常的问题

详细描述你的问题
在设置中点击链接会导致音乐停止播放,然后这个软件变成一个网页,无法进行任何操作

系统版本

  • 客户端/网页端: Windows
  • 客户端版本:2.0.0-alpha.5

新功能列表

@little-buddy 我们在这里持续更新一些新功能的状态,以便于同步给社区小伙伴。

功能描述 状态(完成/进行中/未排期) 更新人
歌单加载异常 未排期 -
关闭按钮可配置 未排期 -

重构RfC

大致功能围绕windows版网易云音乐展开,基于浏览器模拟实现放大缩小(缩小后弄一个音乐可视化)功能。

目前准备实现的功能

  • 音乐相关的控制和视频相关的控制
  • 登录相关的控制
  • 搜索相关的控制
  • 歌单推荐相关的控制
  • 下载相关的控制

如有更好的想法可以在下方回复,很高兴你的参与

下载的音乐文件命名的问题

详细描述你的问题
希望增加功能:
1.增加实时播放时的默认播放音质的设置;
2.增加下载音乐时,音质选择的设置;
3.增加下载的音乐文件命名格式的设置,如:歌名-歌手.mp3、歌手-歌名.mp3、歌名.mp3等;

系统版本

  • 客户端
  • Radishes(2.0.0-alpha.5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.