课程章节介绍
同学们,咱们来看这一页,讲的是怎么在 Lightning Web 组件里跟 Outlook 或 Gmail 集成,还有怎么配置快速操作。这两个都是很实用的功能,我来给你们掰开揉碎讲清楚。
先说 Outlook 和 Gmail 的集成。在 Lightning Web 组件里,如果你想让组件能嵌入到邮件侧边栏,得用 `lightning__RST` 这个目标。这个目标自带了一些预定义的属性,比如邮件的正文、主题、相关人员、日期、电子邮件地址、位置、模式、来源这些,全都是从邮件的上下文中自动抓过来填好的。所以你不用再费劲自己去取这些数据。记得,这些属性默认不用出现在你的组件配置文件里,除非你非要给它们设个默认值,否则系统会自动处理好。
接下来是快速操作,这玩意儿是通过 `lightning__RecordAction` 目标来配置的。快速操作有两种类型:一种是 `ScreenAction`,能弹出一个有界面的窗口,让用户填东西;另一种是 `Action`,完全是后台跑代码,没界面,用户点了就默默执行。关键点在这儿:类型一旦定下来,后面就改不了啦,所以一开始就得想清楚。另外,快速操作只能在 Lightning Experience 里面的记录页面用,在 Aura 网站或者移动 App 上是不行的。
还有一个很重要的细节:当快速操作加载时,`recordId` 不会在常规的 `linkedCallback()` 生命周期钩子里传给你。那怎么拿到当前记录的 ID 呢?你得用一个带 `@api` 装饰器的 setter 方法,等框架把值分配过来的时候,你就能抓住它了。这个点经常有人踩坑,所以要特别记住。
配置完了组件之后,你不是自动就能用的。你还得去设置里手动创建一个快速操作,把它绑定到你的组件上,然后再把这个快速操作拖到相应的页面布局里,这样用户才能看到和点击。
好,这页的重点就这些,很简单,就是记住那几个属性自动填、类型不可变、适用范围、还有怎么拿 recordId。有什么问题随时问。
关键词
LWC
Lightning Web Components
Salesforce