Coder Social home page Coder Social logo

music-pc's Introduction

music-pc

项目简介

基于vue3+vite+typescript开发的仿网易云音乐web-pc端,不使用任何UI框架,所有组件和样式均自主开发。

技术栈

已完成功能

  • 推荐页面

    • 轮播图
    • 热门推荐
    • 入驻歌手
    • 新碟上架
    • 榜单
  • 排行榜页面

    • 榜单列表
    • 榜单详情
    • 榜单评价(分页)
  • 歌单页面

    • 歌单分类
    • 歌单列表(分页)
  • 歌单详情页面

    • 歌曲列表
    • 歌单评价(分页)
  • 歌手列表页面

    • 歌手分类
    • 首字母筛选
    • 歌手列表
  • 歌手详情页面

    • 歌曲列表
  • 新碟上架页面

    • 专辑分类
    • 专辑列表(分页)
  • 歌曲播放

    • 只要有歌曲列表的地方,都可以直接点击播放
    • 底部播放
    • 歌曲控制(暂停、播放、上一首、下一首)
    • 歌词解析、展示、滚动
    • 播放列表

项目规范

  1. 所有组件的文件夹命名和文件命名用大驼峰,出口文件使用index命名;
  2. 插件命名使用大驼峰,其他所有文件和文件夹均使用小驼峰;
  3. 样式通过scss编写,所有的css类名全部小写,并用-连接;
  4. 全局类型声明和静态数据类型声明在typings文件夹中,各模块对应的类型声明在各模块的typing.ts中编写;
  5. 网络请求相关封装和api接口管理、数据处理都在apis文件夹中;
  6. 工具方法统一放在utils文件夹中,再分类管理;
  7. 插件统一放在plugins文件夹中;
  8. 自定义hooks统一放在hooks文件夹中;
  9. 页面组件和业务模块组件统一放在pages文件夹中,页面组件作为容器组件,用于处理数据、逻辑和布局,业务模块组件是对应页面的UI组件,只负责UI不负责逻辑;
  10. 通用组件和其它UI组件统一放在components中;
  11. 组件内部书写顺序:
    • 定义响应式数据(ref,reactive)
    • 解构自定义hooks
    • 定义computed
    • 生命周期函数
    • 其他逻辑代码
    • watch和watchEffect
  12. vuex规范:
    • 每个页面模块有自己独立的vuex模块,在store文件夹中模块化管理
    • state、mutations、getters、actions分离,在index中导入
    • 事件类型,在actionTypes中管理

项目运行

clone项目

git clone https://github.com/sanjings/vue3-vite-ts-music.git

安装依赖(推荐使用pnpm)

npm install pnpm -g
pnpm install

本地运行

yarn dev or npm run dev

打包

yarn build or npm run build

最后

欢迎pr,喜欢就赏个⭐吧,谢谢支持

music-pc's People

Contributors

sanjings avatar

Stargazers

kecat avatar  avatar 途远 avatar Tuan Duc Tran avatar  avatar  avatar  avatar 赵建伟 avatar  avatar  avatar li feng avatar macc avatar  avatar  avatar  avatar  avatar kayrain sun avatar  avatar oygsky avatar liben avatar  avatar  avatar  avatar Ou avatar  avatar  avatar  avatar  avatar Wq avatar 千山 avatar  avatar  avatar

Watchers

 avatar  avatar

music-pc's Issues

有关router路径的问题

作者你好,我在GitHub上搜网易云音乐web端 搜到了您的项目,首先项目很棒,看了一下你的router配置文件,现在的路由访问没有问题,但是想问问你有没有办法在访问 "/"项目根路径时直接匹配到3级路由/discover/recommend/内容,就像网易云音乐官网的一样,直接打开网站匹配的就是discover下的recommend,或者相关的实现方式,感谢回答

很棒的项目

刚入前端的萌新,正在学习Vue3+Vite的开发模式 这对我学习的帮助很大 感谢开源分享

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.