react(Ts)

TypeScript进阶指南
本文深入探讨TypeScript的基础概念和高级特性,包括变量定义、数组与元组使用、函数类型声明、类与继承机制、修饰符作用范围以及静态属性方法等。此外还介绍了枚举类型的应用场景。

定义Ts变量
var 是一个函数体的作用域
let 定义变量,限制变量的作用范围。防止变量的重复定义(相同类型)
const 定义及赋值

定义数组有两种方法:
1.let myArr: number[] = [123,456]
2.let myArr: Array = [‘1’,‘2’]

元组类型 tuple
跟数组差不多,但是里面的元素是可以多个类型,编译出来的javaScript也是数组,
元素的个数是固定的,顺序不能变

函数指向返回值的类型
可以让调用的地方知道是什么类型的返回,以便进行处理

默认参数(=),可选参数(?),一般放到参数后面
默认参数可以不指定类型,会自动判断和计算

慎用any类型,可能会自己判断类型

类 class
class(模板) new 对象
数据(data) 行为(action) 行为可能是对数据进行操作

class继承
继承父类的数据和方法,就是属性和方法
调用方法是,先找自己本身对象的方法,如果没有就去找父级的
super代表父级

三个修饰符对成员属性和方法进行修饰
修饰符
public 公共的 任何属性和方法都可以在生成的对象中调用,默认就是public,只是省略了
private 私有的 , 只有在内部对象内才能访问,生成的对象调用不了,
要调用私有方法和属性,可以在class里定义public的方法来调用
继承的对象也是不能够直接用生成的对象来访问
子类继承的时候也可以几层是由的属性和方法,也是要通过class里定义的public的方法来调用

protected收保护的,只有字啊内部class还有子类才能访问,生成的对象访问不了
要调用私有方法和属性,可以在class里定义public的方法来调用
继承的对象也是不能够直接用生成的对象来访问
子类继承的时候也可以几层是由的属性和方法,也是要通过class里定义的public的方法来调用
(这点根其他的语言有些不太一样)

private protecred 在子类的时候

权限范围 public >protected> private

construcror 构造方法
如果申明为protected
或者privote , 当前类不能 new
当父类申明为protected,子类重写constructor 方法后可以 new (子类可以new)
如果父类申明为private,子类不能new和extends
super在constructor 方法中是调用父类的构造方法,必要时,要传入参数
作用
1.但不想被实例化,而指向让子类继承后实例化,申请为protected的时候
2.都不想让子类和父类数理化或继承,可以申请为private
3.一般情况系,申请为public(或者不写)

Static 静态属性和方法
通过类似Person加方法名或属性来调用(比如Person.age)
默认是申明为public
如果是protected或private的话,当前类都不能调用,通过public的静态方法来调用
如果父类是protected或private的话,子类也能继承所有的静态方法和属性
子类还是不能调用protected或private方法和属性,只能通过public来调用
子类定义的方法(public)只有是父类定义为public或protected的才能访问,private的不能访问

枚举类型
它的值是数字序号,从 0 开始
代码可读性强
可能会常用于下拉框等应用

React TS 是指将 React 框架与 TypeScript 结合起来使用的一种开发模式。TypeScript 是一种静态类型的编程语言,它是 JavaScript 的超集,在运行时会被编译成普通的 JavaScript 代码。结合 React 和 TypeScript 能够提高代码的质量、可靠性和可维护性。 以下是 React 使用 TypeScript 的一些关键点: 1. **组件类型安全** 当我们在创建 React 组件时,可以利用 TypeScript 提供的接口 (Interface) 或类型别名 (Type Alias),明确指定 props 和 state 的数据结构以及它们的数据类型。这有助于减少潜在错误并提升开发者体验。 ```tsx interface ButtonProps { label: string; onClick: () => void; } const MyButton = ({label, onClick}: ButtonProps) => ( <button onClick={onClick}>{label}</button> ); ``` 2. **增强代码提示功能** TypeScript 可以让 IDE 更好地理解您的代码,并提供智能感知支持(如自动补全)。这对于大型项目尤其重要,因为它能帮助团队成员快速熟悉现有 API 并避免误用。 3. **第三方库兼容性** 很多流行的 React 第三方库都已经有了官方或者社区提供的声明文件 (.d.ts 文件), 这些声明文件描述了该库的所有公开方法及其参数等信息。因此即便是在集成外部依赖时也能享受同样的类型检查优势。 4. **工具链整合简单高效** 现代前端构建系统例如 Webpack/Babel 非常容易配置为同时处理 JSX+TSX 格式源码,使得迁移已有纯 JS 工程的成本较低。 总结来说,采用 React + TypeScript 技术栈可以让应用程序更健壮、更容易测试及扩展;同时也降低了调试难度因为很多问题会在编写阶段就被捕获到而不是等到部署之后才发现。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值