手机端浏览器音频自动播放
最近在尝试做一个文字转语音的功能,使用第三方的接口进行文字转语音,接口传入文字,返回音频文件,然后自动播放,这个流程在PC运行正常的,但是到了手机端,发现没有效果,因为手机端的浏览器默认不需要audio自动播放,需要明显的用户操作,比如点击才可以。
最近在尝试做一个文字转语音的功能,使用第三方的接口进行文字转语音,接口传入文字,返回音频文件,然后自动播放,这个流程在PC运行正常的,但是到了手机端,发现没有效果,因为手机端的浏览器默认不需要audio自动播放,需要明显的用户操作,比如点击才可以。
状态驱动是编程时的一种很重要的算法思想,能够帮助我们梳理和解决很多的问题,可以说很多的计算机算法,做的事情都是将程序从一个状态转移成为另一个状态。
最近需要实现一个状态机,一开始没当回事,后来写着写着,发现其中的状态管理和变化需要被仔细设计才能保证没有问题,今天就简单记录其中一版。
本次博客正式进入源码的解析部分,我们主要分析源码中的以下几个部分:
我们在迁移到vite的时候,可能会遇到一个情况,就是旧的项目中如果采用webpack,可能会将css文件直接当作css moudle去使用,但是这一点在vite中是不支持的,想要当作css module去引入,就必须以module.css作为扩展名,在研究了以下vite的源码之后,我们可以通过插件来实现这个无缝切换,并且实现css的热更新。
这篇博客我们介绍一下Vite的插件API,并且开发一个简单的插件来支持MPA项目。
本系列的博客分为三个部分,分别介绍Vite的基本概念与使用,Vite的插件API与插件开发,以及Vite的源码解析。
这个算法是图论中比较经典的最大流问题的算法,使用场景有很多,比如在互联网中已知中间链路每一段的最大流量,如何最快速地把数据从一个节点传递到另一个节点。
LFU缓存是非常常见的缓存策略算法,如果考虑在O(1)的复杂度下实现,还是有一点意思的。