之前对Rxjs的concatMap、switchMap、exhaustMap、mergeMap这四个映射操作符的理解有欠缺,以下是对这四个操作符的深入理解。首先在理解这四个操作符之前一定要理解的概念就是源数据
和映射Observable
,我们可以把这两部分想象成流水线工厂的原材料
和加工机器
,一定要独立的理解这两部分,这四个操作符不同的地方就是在加工机器
这一部分使用了不同的逻辑,以此来产出不同的结果
最近由于项目需要,需要非开发人员根据业务数据的手动录入表单并且可以同步输出对应的JSON数据.记录下整个业务分析和最终实现的过程.
首先是下面的流程图,最终呈现的效果为,用户开启语音输入,识别问题后调用GPT获得结果的同时向讯飞发起语音合成.
以ChatGPT为基础结合ChatVRM,讯飞语音合成和语音识别实现的前端方案中,单纯的从前端角度出发简要描述各个技术的结合.
之前对于Promise并没有深度的了解过,闲来无事手写了Promise,过程中对Promise有了更进一步的了解,其中比较难的就在于then()
的内部处理,之所以能实现链式调用和异步处理,最重要的核心就是一旦调用了then()
方法,内部就会重启一个新的Promise并将其返回,并根据Promise的状态来做不一样的处理
针对基础的Ts知识不做过多解释,相关文档查阅即可.本文注重对于类型操作中的难点和日常项目中的高频类型等做整理.本文会在内置的高级类型基础上延展.
针对内置的高级类型,这里按照操作类型做了简单的分类.
本文主要记录Eslint和Cz工具集配置过程:
本文你主要用于记录viewport适配方案在Ng中的应用.具体viewport方案的优劣和介绍不做过多介绍.
装饰器在Angular中是个很常见的概念,@Component
、@Directive
、@Pipe
、@NgModule
、@Injectable
、@Input
、@Inject
等等.本文着重讲解各种装饰器的作用以及在Angular中的实际使用