前端如何优化首次渲染性能

性能优化需求产生原因 前端项目日益加大,并且三大框架Angular, Vue, React导致单页面应用(SPA)大行其道,小程序的日益化也导致现在前端需要优化项目的首次渲染速度。 如何优化,归根结底就是了解一个网页是如何渲染的,一个简单的网页渲染分为两个大步骤 - 文档对象模型DOM - CSS对...

技术

TypeScript-interface和type的区别

在ts中,定义类型由两种方式:接口(interface)和类型别名(type alias) interface只能定义对象类型,type声明的方式可以定义组合类型,交叉类型和原始类型 如果用type alias 声明的方式,会导致一些功能的缺失 1.interface方式可以实现接口的extends...

技术

Angular-监听文件上传进度

获取文件 服务 uploadFile(file): Observable { const req = new HttpRequest('POST', '/upl...

技术

逻辑运算符

扒一扒逻辑运算符 第一阶段 刚开始学逻辑运算符的时候 我们知道与或非 => && || ! [scode type="blue"]复杂点的与非或非以及相互转换这些我们暂时不去讨论[/scode] 第二阶段 熟悉了基础操作之后,我们又知道数据类型是可以相互转换的 数字,字符串,...

技术

TS之this形参-即指定this类型

在VS code 中 使用ts编码时写了一个很简单的代码: window.onmousedown = xxx 此时鼠标移动上来会出现类型推断的提示: !批注 2020-03-03 220407.png 这个时候我就在想: 两个参数吗? 可是我们平时调用不就是一个Event对象传入吗? 于是我就去翻阅...

技术

查询字符串路由未传查询字符串会导致angular匹配不到路由

今天遇到一个搞笑的事情,项目里有一个路由 这个路由是需要传路由参数的,而路由参数由URL导入,因为我未传URL的相关参数,导致路由匹配时未匹配到我的参数,所以一直报错:“为匹配到路由” 我还在想怎么上周五还能运行,周一就不行了。 原来是angular的路由匹配的带路由参数匹配和不带路由参数匹配的问题...

技术

前端接口二进制流文件保存文件

xxx.subscribe( (res) => { let file = new Blob([result.body], { type: result.body.type}); let link = this.renderer2.createElement('a'); let...

技术

瞎猜抖音广告推广的算法

起因 今天早些时候,有妹子询问我想买电脑有什么推荐? 我就在京东上帮着看了几个笔记本电脑。本来这是一件可有可无的事情。 在下班路上刷抖音时,就变得不一样了起来。 竟然马上抖音就推到了我京东的广告,上面还精准的播放着我搜索以及停留的商品,这就引起了我的思考(当然可能还是我闲的) 抖音是怎么能精准的定位...

其他

void操作符

今天在看ts转换JS的代码时 看到了一串代码 a === void 0 ? x : m 顿时心生困惑,按照逻辑 void 0 应该等价于undefined ,可是我并没有遇到过void 0 这种情况,于是查阅了一下相关资料 > void运算符可以执行右侧的表达式,返回值始终为undefined。 >...

技术

小试牛刀之使用指令完成clickOutSide功能

前面提到了Angular的Directive指令。现在用指令完成一个小功能。 新建指令 ng genrate directive directiveName @Directive({ selector: '[appClickOutSide]' }) export clas...

技术
1789101114