TypeScript高级特性

TypeScript高级特性

1. unknownunknown 指的是不可预先定义的类型,在很多场景下,它可以代替 any 的功能同时保留静态类型检查的能力,而 any 是放弃了静态检查 1234const a: unknown = 123;a.split(''); // Error 静态检查不通过const b: any = 234;b.split('') // Pass 没有静态检查,运行时...

TypeScript 的 extends 条件类型

TypeScript 的 extends 条件类型

TypeScript 的 extends 条件类型这是 TS2.8 版本中推出的特性,此能力让类型定义变的更加灵活,需要注意:extends 运用在 type 和 class 中时完全是两种作用的效果。 条件类型是一种 条件表达式 进行类型的关系检测 分为以下几种类型检测 简单值(原始值)的匹配 123456相当于是匹配两值是否相等type Equal<X, Y...

代理模式 - proxy

代理模式 - proxy

什么是代理模式 代理模式(英语:Proxy Pattern)是程序设计中的一种设计模式。 所谓的代理者是指一个类别可以作为其它东西的接口。代理者可以作任何东西的接口:网络连接、内存中的大对象、文件或其它昂贵或无法复制的资源。 著名的代理模式例子为引用计数(英语:reference counting)指针对象。 当一个复杂对象的多份副本须存在时,代理模式可以结合...

简单易懂的CSS Modules

简单易懂的CSS Modules

CSS的痛点我们都知道,css入门简单,深入就比较难,样式简单维护难,css痛点有很多 css的规则是全局的,任何一个组件的样式规则,都对真个页面有效,很容易出现全局污染(覆盖)问题 为了解决全局污染问题,那就吧class命名写长一点、加一层父级选择器、降低冲突几率,但css命名就混乱了 组件依赖管理不彻底,组件应该相互独立,引入一个组件时,应该只引入它所需要的 C...

http server

http server

使用http-server快速搭建本地服务在静态页面中需要进行局域网进行访问时,可以开启这个 http-server 来进行访问 该环境是基于node环境的,所以必须先安装node.js 打开命令行模式,输入node -v如果显示了版本号,就说明已经安装完成。如果提示没有这个命令,请在node.js官网进行安装 如果完成上一步,在命令行下进行安装http-serv...

async/await 用法整理

async/await 用法整理

它最受欢迎的地方:能让异步代码写起来像同步代码,并且方便控制顺序。 async/await 概念解释 async async的用法,它作为一个关键字放到函数前面,用于表示函数是一个异步函数,因为async就是异步的意思, 异步函数也就意味着该函数的执行不会阻塞后面代码的执行,async 函数返回的是一个promise 对象。 await await的含义为等待。意...

vue css中/deep/深度选择

vue css中/deep/深度选择

vue css中/deep/用法/deep/的意思大概为深入的,深远的(深度选择)。Scoped CSS规范是Web组件产生不污染其他组件,也不被其他组件污染的CSS规范。这样在打包的时候会生成一个独一无二hash值,这样父组件的样式就不会影响到子组件了;再用别人或者第三方组件是,要是想修改其组件的样式,一般都是提取公共文件,但是存在问题是有时候你修改一处就可能影响到别的...

lodash之concat

lodash之concat

function copyArray(source, array) { var index = -1, length = source.length; // 这里判断 array 是否为 undefined,如果是就定义一个与 source 长度相等的数组。 array || (array = Array(length)); while (++ind...

×
  • {title}