课程章节介绍
大家好啊,咱们今天聊一个部署 Lightning Web Components 的时候很容易忽略,但又特别关键的一步——TypeScript 的编译。
很多同学可能已经用上 TypeScript 写 LWC 组件了,毕竟类型检查能帮我们提前发现好多低级错误。但你要记住,Salesforce 平台本身是不认识 TypeScript 的,LWC 的编译器也只认 JavaScript 文件,它压根儿没有内置 TypeScript 的编译功能。
所以怎么办?很简单,你在把代码部署到 Salesforce 之前,必须先用标准的 TypeScript 编译器,也就是咱们常说的 tsc,亲手把 .ts 文件转换成 .js 文件。常用命令就是 `npx tsc --Project`,它会把你项目里 lwc 目录下所有的 TypeScript 文件都编译一遍。编译完你会发现,每个 .ts 文件旁边都自动生成了一个同名的 .js 兄弟文件。最后真正上传到平台、被 Salesforce 运行的,就是这些编译后的 JavaScript,你的 TypeScript 源码平台看都不看一眼,也不会存起来。
那你的 TypeScript 源文件就只能靠自己管理了,通常就是放到 Git 这种源代码管理系统里。这也意味着你本地开发的时候,得维护好编译这个环节,每次改完 .ts 代码,先跑一遍 tsc,再用 Salesforce CLI 去部署生成的 .js 文件。
如果你已经有一些用 JavaScript 写的现成组件,想迁移到 TypeScript,流程也很简单粗暴:直接把 .js 文件重命名成 .ts,然后跑一遍编译器,看看爆出哪些类型错误,一条条修掉就行了。遇到不知道怎么改的问题,建议去查一下官方的 TypeScript 迁移指南,里面总结了各种常见转换场景的处理方法,能帮你省不少时间。
总之一句话,用 TypeScript 写 LWC,部署前千万别忘记手动编译,不然 Salesforce 可不认识你的 .ts 文件。好,这一节就讲这些,咱们下次见。
关键词
LWC
Lightning Web Components
Salesforce