-
课程内容收获
查看全部 -
react
查看全部 -
let u: undefined = undefined
let n: null = null
//区别
Number(null) //0
查看全部 -
react与Ant结合
查看全部 -
用到的插件 classNames 、rmc-deefback 、m-dialog
查看全部 -
ReactDOM.createPortal 方法允许子组件挂载到外层容器中,还能有事件冒泡的功能
查看全部 -
reactDom findDomNode 方法返回的是Dom节点(HTML元素)首先需要利用ref获得节点对象
查看全部 -
render()的渲染机制 stack 老得渲染机制
fiber 新的渲染机制 分层比对更新(16ms内比对完)
查看全部 -
泛型约束
定义一个interface,然后让泛型继承
interface ILength {
Length: number
}
function getLength <T extends ILength >(arg: T): T{
return arg.length;
}
例子2 两个类型约束
function getProperty<T, K extends keyof T>(obj:T,key:K){
return obj[key];
}
keyof 表示取出对象中的所有的属性
查看全部 -
ts 泛型类
class Adder {
add: <T>(arg1:T,arg2:T) => T
}
const adder = new Adder()
adder.add = funcction add<T>(arg1:T,arg2:T){
return arg1 + arg2;
}
可以改写为
class Adder<T> {
add: (arg1:T,arg2:T) => T
}
const adder = new Adder<number>()
adder.add = funcction add(arg1,arg2){
return arg1 + arg2;
}
查看全部 -
泛型类型写法:
1、<T>(arg1:T,arg2:T) => T
2、{<T>(arg1:T,arg2:T) : T}
let addFuc:<T>(arg1:T,arg2:T) => T
简化泛型类型,方便引用使用interface
interface GenAdder {<T>(arg1:T,arg2:T) : T}
let addFuc:GenAdder
调用函数
addFunc<number>(1,2);
interface GenAdder<T> {(arg1:T,arg2:T) : T}
let addFuc:GenAdder<number>
调用函数
addFunc<(1,2);
查看全部 -
原始函数
function add(arg1:number,arg2:number):number{
return rag1+rag2
}
ts 泛型
function add<T>(arg1:T, arg2:T):T{
return arg1 + arg2
}
函数调用
add<number>(1,2);
add<string>('aa','bb');
查看全部 -
ts target配置 经过typescript的编译后生成什么版本的js代码,通常设置橙es5
查看全部 -
ts noImplicitAny 设置为true时表示不允许出现隐式any类型。
设置为false时表示允许出现隐式any类型。
解决变量隐式类型的方法式在变量定义的时候就给变量赋值。代码如下:
const key = "name"
const student = {
[key] : 'zhangsan'
}
查看全部 -
ts 配置esModleInterRop 值设置为true的时候,当导出不含default是会自动加上default。使用场景module.exports={},设置为true时 相当于modele.exports.default = {}
查看全部
举报