GitXplorerGitXplorer
f

music-player

public
1 stars
0 forks
13 issues

Commits

List of commits on branch master.
Unverified
2e8578617ce785f90bfd1e4b3dd1adddf354982f

feat:新增打包文件

ffireairforce committed 5 years ago
Unverified
db56051e63126980d896b216a9360ace49aa89ac

feat:新增打包脚本

ffireairforce committed 5 years ago
Unverified
80251fd441e3fdd2822f027b0009c4ddbcafd5fd

feat:优化时间样式

ffireairforce committed 5 years ago
Unverified
0e62f1c56649e4eec503ab486baeb4400647032c

feat:完成播放器功能的展示

ffireairforce committed 5 years ago
Unverified
90bfd0007b73c28fbbca8e2e9cc84e868d7ca4f2

feat:完成歌单的删除功能

ffireairforce committed 5 years ago
Unverified
828f4f7728e59fdc19cbc4a1757218065cb09776

feat:使用html的audio属性以及dom api完成音乐播放功能

ffireairforce committed 5 years ago

README

The README file for this repository.

Usage

首先修改了一波启动脚本:使用nodemon来完成对文件的watch.

"scripts": {
   "start": "nodemon --watch main.js --exec 'electron .'"
},

只要main.js一旦发生变化,就会去执行electron .这个脚本命令。main.js使我们的主进程。

数据持久化的方式

  • 使用数据库软件
  • 使用html5提供的浏览器对象
  • 使用本地文件

这里使用electron-store来对数据进行一个存储

可以使用

// 这里能够打印出electron-store存储数据的文件目录位置
// console.log(app.getPath('userData'));

音乐播放

使用html5Audio标签来完成音乐的播放:

<audio
  controls 
  src="/media/examples/xxx.mp3"
>
</audio>   

对应的js对象:

const horn = new Audio('car_horn.wav');
horn.play();
horn.pause();
horn.volume = 0.75;
horn.addEventListener('loadeddata', () => {
   let duration = horn.duration;
})

使用音乐的dom节点来存储data信息

  • HTML 中使用自定义的data属性:data-*来存储
  • JS中使用HTMLElementdataset属性来获取(具体可以参考音乐播放那里)

事件的绑定上面我们使用事件的冒泡机制来完成事件的代理功能。

遇见复杂的问题可以使用流程图来解决