TS实战经验

1 定义未知属性的对象

 let clearPersonFormObj: { [propName: string]: any } = {};

 clearPersonFormObj[item.dataKey] = '';

2类型命名大驼峰 SourType

3设为可选 <Partial>  useState<Partial<API.SaftyCheckOutput>>({})

4Recordable 为T   useState<Recordable<API.ComSaftyOutput>>({});

5继承 interface SourseType extends a { key: number; xx?: ccc; }

可以直接用 type xxx = a & { xx:ccc } 

2,bug

1,react+ts导入图片,找不到模块“......logo.png”或其相应的类型声明。

新建一个.ts文件声明

在tsconfig文件引入

2 'React' must be in scope when using JSXeslintreact/react-in-jsx-scope

React@17以后,是不需要再手动去引入React的。因为该版本之后加入了react/jsx-runtime,会自动对JSX进行解析

现在报错,就是因为eslint中的extends中没有加入这个runtime,加上就可以了

"plugin:react/jsx-runtime"

 

或者在 eslint中的rules加上关闭

'react/react-in-jsx-scope' :'off',

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值