7-15播放器progress-circle圆形进度条组件实现

1.首先是引入三步  progress-circle 引入到player.vue中

然后就是 SVG技术

值得注意的事   svg 中 circle里面的  stroke-dasharray属性与 stroke-dashoffset 能控制 可用来控制圆形进度条

7-16播放器模式切换功能实现(上)

改变 播放样式状态  的同时 也要更改 vuex中的 的播放状态

首先 是 计算属性 中 取

然后 是方法中 提交

通知 vuex  改变 vuex 中的状态

 一开始的播放状态 是从 vuex中  state.js中取到的

后面更改状态 mode也要做相应的改变

关于 变化按钮状态中  三目运算的连续判断 用法

7-17播放器模式切换功能实现(中)

  在chrome中 vue的import 出来的方法 断点监听不到

  在上面的方法中

  

  playMode只能通过打印才能看到  谷歌浏览器监听不到 我擦
  然后  vuex 仓库中  sequenceList 跟    playlist  是在 点击详细页的时候 action一次性提交的  也就是说 他们那时候的列表是一样的

  后来 在改变状态的时候 源代码 是将  sequenceList 取到 然后打乱 通过 shuffle  然后通过

  SET_PLAYLIST 也将 playlist  打乱了 也就是 
  sequenceList  这时候 跟 playlist  保持一致了
  这是经典随机打乱数组的方法
   (复制我会放在base.js中)
   隔天补一下 有个地方没搞懂的代码    我发现在vuex 状态管理器中   getter.js  单单改变其中一个 state.playlist 是不会触发 currentSong   
  我擦  原来是这样的 ....   经典打乱数组的方法 是不会被监听到数组的变动  因为里面的对象跟属性都没变 只是顺序变了  所以 只能 用索引值 才能进行 当前歌曲的触发
  

  

  

7-18播放器模式切换功能实现(下)
 
  监听能否播放  以及歌曲播放结束后触发事件  
  

  经过测试  用this.$refs.audio.currentTime = 0; 只是将时长弄到零  还需

  this.$refs.audio.play();进行再次播放

  

  

音乐app各部分笔记(二)的更多相关文章

  1. vue移动音乐app开发学习(二):页面骨架的开发

    本系列文章是为了记录学习中的知识点,便于后期自己观看.如果有需要的同学请登录慕课网,找到Vue 2.0 高级实战-开发移动端音乐WebApp进行观看,传送门. 完成后的页面状态以及项目结构如下: 一: ...

  2. 音乐app各部分笔记(一)

    7-11 播放器播放时间获取和更新 1.audio 有一个 ontimeupdate事件 播放过程中 随时触发 vue里面就是  @timeupdate   事件中有默认参数 e  通过e.targe ...

  3. 【音乐App】—— Vue-music 项目学习笔记:项目准备

    前言: 学习慕课网Vue高级实战课程后,在实践中总结一些这个项目带给自己的收获,希望可以再次巩固关于Vue开发的知识.这一篇主要梳理:项目概况.项目准备.页面骨架搭建.项目github地址:https ...

  4. webpy使用笔记(二) session/sessionid的使用

    webpy使用笔记(二) session的使用 webpy使用系列之session的使用,虽然工作中使用的是django,但是自己并不喜欢那种大而全的东西~什么都给你准备好了,自己好像一个机器人一样赶 ...

  5. Django开发笔记二

    Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.xadmin添加主题.修改标题页脚和收起左侧菜单 # ...

  6. 《CMake实践》笔记二:INSTALL/CMAKE_INSTALL_PREFIX

    <CMake实践>笔记一:PROJECT/MESSAGE/ADD_EXECUTABLE <CMake实践>笔记二:INSTALL/CMAKE_INSTALL_PREFIX &l ...

  7. jQuery源码笔记(二):定义了一些变量和函数 jQuery = function(){}

    笔记(二)也分为三部分: 一. 介绍: 注释说明:v2.0.3版本.Sizzle选择器.MIT软件许可注释中的#的信息索引.查询地址(英文版)匿名函数自执行:window参数及undefined参数意 ...

  8. 高性能Cordova App开发学习笔记

    高性能Cordova App开发学习笔记 文件结构 添加插件 构建准备 各个www的作用,prepare命令会将hello\www的内容会拷贝到platform下的wwww目录,知道该改哪里了吧?如果 ...

  9. Mastering Web Application Development with AngularJS 读书笔记(二)

    第一章笔记 (二) 一.scopes的层级和事件系统(the eventing system) 在层级中管理的scopes可以被用做事件总线.AngularJS 允许我们去传播已经命名的事件用一种有效 ...

随机推荐

  1. codeforces 540E"Infinite Inversions"

    传送门 题意: 给你一个无限大的整数序列  p = {1, 2, 3, ...}: 有 n 次操作,每次操作交换第 ai 个数和第 aj 个数: 求序列中逆序对的个数: 题解: 考虑交换完后的序列,存 ...

  2. Python 的文件处理

    Python提供了os.shutil.glob 等开发包处理文件 一.OS包 os包中包含了目录创建.目录删除.文件创建.执行系统命令等方法. import os remove()   删除文件 mk ...

  3. re-download dependencies and 无法下载jar 的解决

    Re-download dependencies and sync project (requires network) 其实就是修改gradle 的path 路径:

  4. 用count sql做jmeter的while条件

    ${__groovy(vars.get("pboc_req_record_counter_1") == "Invalid"  || vars.get(" ...

  5. C# 主动发起请求代码

    本文用于写代码是给提示 private string GetHW(string uri) { string returnStr = ""; HttpWebRequest hwReq ...

  6. Problems found loading plugins: Plugin "GlassFish Integration" was not loaded: required plugin "Java EE: EJB, JPA, Servlets" is disabled.

    idea启动报错:并且无法部署web项目 Problems found loading plugins: Plugin "GlassFish Integration" was no ...

  7. redis使用问题一:Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a resource from the pool] with root cause

    本文使用的是spring-data-redis 首先说下redis最简单得使用,除去配置. 需要在你要使用得缓存得地方,例如mybatis在mapper.xml中加入: <cache evict ...

  8. ACM-ICPC 2018 焦作赛区网络预赛 K Transport Ship (多重背包)

    https://nanti.jisuanke.com/t/31720 题意 t组样例,n种船只,q个询问,接下来n行给你每种船只的信息:v[i]表示这个船只的载重,c[i]表示这种船只有2^(c[i] ...

  9. springboot的lombok

    lombok概述 lombok简介 Lombok想要解决了的是在我们实体Bean中大量的Getter/Setter方法,以及toString, hashCode等可能不会用到,但是某些时候仍然需要复写 ...

  10. IntelliJ IDEA 2017 配置Tomcat 运行Web项目

    以前都用MyEclipse写程序的 突然用了IDEA各种不习惯的说 借鉴了很多网上好的配置办法,感谢各位大神~ 前期准备 IDEA.JDK.Tomcat请先在自己电脑上装好 好么~ 博客图片为主 请多 ...