美文网首页
React:音乐播放动效

React:音乐播放动效

作者: 精神病患者link常 | 来源:发表于2022-11-11 19:15 被阅读0次
QQ20221111-190840-HD.gif

思路:1.每一竖条为一个单位,内部创建ndiv,每100ms改变部分div的透明度
2.每次随机一个值random,小于randomdiv透明度依次从0.1~1,大于random的透明度为1

import { useEffect, useState } from "react";
import { useSpring,animated } from "react-spring";
import styled from "styled-components";
import { autoWidthVW } from "../../common/Common";
import { ColumnFixedView, RowFixedView } from "../View";

const colors = [
  '#FF3399',
  '#009900',
  '#FF99FF',
  '#3300CC',
  '#990033',
  '#FFFF33',
  '#CC33FF',
  '#00CCFF',
  '#FF00FF',
  '#660099',
  '#666600',
  '#FFCC00',
]
export default function LineAnimal(){
  return <RowFixedView>
    {
      colors.map((item:string,index:number)=>{
        return <AnimalLine key={index} line={10} color={item}/>
      })
    }
  </RowFixedView>
}
function getRandom(line:number){
  return parseInt(Math.random()*(line - 1)+'') + 1
}
function AnimalLine({line,color}:{line:number,color:string}){
  const array = new Array(line).fill('');
  const [random,setRandow] = useState(1)
  useEffect(()=>{
    setInterval(() => {
      setRandow(getRandom(line))
    }, 150);
  },[])
  return <ColumnFixedView>
    {
      array.map((item:any,index:number)=>{
        const style = useSpring({
          from:{opacity:1},
          to:{opacity:0.1+((1 - 0.1) / random) * index},
          config: {
            duration: 150,
          },
        })
        return <Line color={color} style={index < random ? style : {}} key={index}/>
      })
    }
  </ColumnFixedView>
}
const Line = styled(animated.div)<{
  color:string
}>`
  width:20px;
  height:4px;
  border-radius: 2px;
  background-color: ${({color})=>color};
  margin:2px
`

相关文章

  • React:音乐播放动效

    思路:1.每一竖条为一个单位,内部创建n个div,每100ms改变部分div的透明度2.每次随机一个值random...

  • React Native的动画(一)

    前言 React Native作为大前端开发的一种技术,自然离不开各种炫酷的动效。在React Native中动效...

  • autojs音乐动效

    牙叔教程 简单易懂 效果展示 缘起 看视频的时候, 觉得人家的音乐动效特别好看, 上面这个效果还是没有人家的好看,...

  • 余音

    简介:小而美的音乐app 好的点: 1.左右翻转的交互 2.界面极简留白适度 3.音乐暂停和播放的动效很美 4.比...

  • Axure教程:实现网易云音乐有声播放效果

    网易云音乐大家应该都有用,它的音乐播放效果不知道你是否有注意过。本文介绍了如何用Axure实现网易云音乐有声播放效...

  • bodymovin踩坑记(GIF/序列动画/svga对比)

    工作中遇到要给扫脸门禁机界面配“科技感”动效的需求。要做一个带光效的动效。做GIF以后,开发在安卓系统门禁机上播放...

  • 在Axure文档中导入动效视频

    我们都遇到过如何跟开发讲清楚动效设计的问题。最近在优化云音乐Android平台的动效,Material Desig...

  • 【H5案例分享】QQ音乐-古画会唱歌- 解析分享

    这个demo是来自QQ音乐——古画会唱歌,这个demo主要想跟大家分享 视频播放的知识点一个画展开的一个动效svg...

  • APlayer音乐播放器

    Hexo 添加APlayer音乐播放器react npm插件推荐音乐外链生成踩坑记--hexo中加入音乐[ Lea...

  • Android仿网易云鲸云音效动效

    最近网易云音乐出了一个叫鲸云音效东西,效果怎么样不是很清楚,但是播放界面还带了动效,这个就比较炫酷了,感觉比较有意...

网友评论

      本文标题:React:音乐播放动效

      本文链接:https://www.haomeiwen.com/subject/eiutxdtx.html