TypeScript
详解 TypeScript 严格模式有多严格

本文深入解析 TypeScript 严格模式(strict)的开启方式及其包含的七个核心配置项。通过 tsconfig.json 启用 strict 后,编译器将强制执行 noImplicitAny、noImplicitThis、strictNullChecks 等规则。文章详细阐述了各项规则对变量类型推断、this 上下文、空值处理、函数参数方差及属性初始化的具体限制,并提供相应的代码修复方案,帮助开发者编写更安全、高可读性的 TypeScript 代码。

10.26
热度 439
解决Vue 3.0找不到模块“./App.vue”或其类型声明的两种方案

本文针对Vue 3.0项目中出现的“找不到模块./App.vue或其相应的类型声明”错误,分析了TypeScript与JavaScript对.vue文件识别的差异。分别提供了针对Vue 3+JS项目配置jsconfig.json,以及Vue 3+TS项目通过env.d.ts声明或tsconfig.json配置的两种解决方案,帮助开发者快速修复构建报错。

10.26
热度 173
简单三行代码函数实现几十行Typescript类型推导

本文探讨在TypeScript中实现复杂类型推导的技巧。通过一个封装Hook的示例,展示了当直接遍历对象键时类型退化为联合类型的问题。文章详细解析了利用递归泛型、元组限定以及联合类型转排列组合的方法,最终用少量代码实现了精确的类型推导,并分享了作为库开发者在类型系统上的思考与经验。

10.26
热度 238
深入理解 TypeScript 类型系统:11 个高级技巧与最佳实践

本文深入解析 TypeScript 类型系统的核心机制,涵盖将类型视为集合、利用控制流进行类型收窄、使用类型谓词避免断言、控制联合类型分布、穷举式检查、type 与 interface 的选择、元组应用、const 与 satisfies 关键字以及 infer 工具类型等 11 个高级技巧,帮助开发者编写更安全、更简洁的代码。

10.26
热度 663
TypeScript实战:TodoList项目中的类型系统应用

本文通过一个TypeScript实现的TodoList项目,深入解析前端开发中的核心类型概念。内容涵盖数据驱动视图的基本逻辑,重点讲解如何使用Readonly修饰符防止副作用,利用交叉类型(Intersection Types)复用接口,以及通过联合类型(Union Types)处理复杂状态。文章结合具体代码示例,展示如何在实际项目中应用TypeScript的类型校验与类型收窄技术,提升代码健壮性。

10.26
热度 272
TypeScript 交叉类型与联合类型详解

本文详解 TypeScript 中的交叉类型(Intersection)与联合类型(Union)。交叉类型使用 & 合并接口,同名属性类型不同时结果为 never;联合类型使用 | 表示多选一。文章还深入探讨了字面量与枚举联合导致的类型缩减现象,以及如何通过类型守卫处理联合类型中的属性访问问题。

10.26
热度 581
Vue2+TypeScript+ElementUI 天气预报实战:装饰器通信与接口封装

本文介绍基于 Vue2、TypeScript 和 ElementUI 的天气预报 Demo 实现。重点解析组件间通过 @Emit 和 @Prop 装饰器进行数据传递,利用 @Watch 监听状态变化,并封装 Axios 网络请求及定义 TypeScript 接口以处理返回数据。

10.26
热度 96
TypeScript 入门指南:必要性、优势与实战配置

本文深入解析 TypeScript 在前端开发中的必要性,阐述其类型系统带来的编译期错误检查、编辑器智能提示及代码可维护性优势。同时提供从环境搭建、tsconfig.json 配置到 Webpack 集成的完整实战指南,帮助开发者快速上手 TypeScript。

10.26
热度 665
使用ts-morph自动化生成TypeScript接口API文档

本文介绍如何利用ts-morph库解析TypeScript接口(interface)的抽象语法树,自动提取属性名、类型及JSDoc注释,并转换为适合React表格或Markdown渲染的数据结构。相比Babel方案,该方法能更直接地获取类型信息与文档注释,简化了前端组件库的API文档自动化生成流程。

10.26
热度 363
TypeScript 基础入门:安装、配置与核心类型详解

本文详细介绍TypeScript的基础使用,涵盖从Node.js环境下的全局安装、版本验证到TS转JS的编译流程。重点解析TypeScript的核心类型系统,包括原始类型、联合类型、接口、元组、字面量类型及泛型,帮助开发者快速掌握类型定义与静态检查机制,提升代码健壮性。

10.26
热度 71
TypeScript中type和interface的区别及注意事项

本文深入解析TypeScript中type与interface的核心差异。type侧重于类型别名与复用,支持非对象类型及交叉类型模拟继承;interface专注于对象结构定义,支持声明合并与真正的接口继承。文章通过代码示例对比两者在扩展、字段添加及编译器提示上的不同表现,并给出对象结构定义优先使用interface的建议。

10.26
热度 163
TypeScript模块化开发指南:ES6与CommonJS对比及常见问题解决

本文深入解析TypeScript中的模块化机制,对比ES6标准模块与CommonJS的差异。重点讲解在Node.js环境中引入非ESM模块(如fs)时的类型错误及编译问题,提供解构导入、命名空间导入及配置esModuleInterop的三种解决方案,并简述命名空间的历史背景与现状。

10.26
热度 288

标签目录

JavaScript 核心技术JavaScript 基础JavaScript 函数与作用域JavaScript 对象与原型JavaScript 数组与数据处理JavaScript 异步编程JavaScript 项目实战
浏览器与 Web 开发DOM 与事件浏览器 API网络请求与通信浏览器数据存储前端调试前端安全
前端框架与应用VueReactNext.jsNuxt前端状态管理前端性能优化
TypeScript 与工程化TypeScript前端构建依赖管理自动化测试前端部署代码规范与重构
Node.js 后端开发Node.js 基础Node.js Web 框架数据库开发接口开发与鉴权服务部署与运维Node.js 性能优化
AI 开发与应用大模型 API 开发AI 智能体开发RAG 与知识库AI 编程工具AI 多模态应用AI 应用部署