课程章节介绍
同学们,今天我们来聊聊在 Lightning Web Components 中加载记录的三种方法。这三种方式从简单到灵活,我们依次来看。
第一种,叫做 ,lightning-record-form,。这是最偷懒、也最快上手的方法,你只需要给它三个东西:`record-id` 记录ID、`object-api-name` 对象名,还有你想要展示的 `fields` 字段列表。它特别聪明,会自动帮你处理查看模式和编辑模式的切换,你连表单的界面都不用自己拼,直接就能用了。如果你的需求就是快速展示一条记录,并且让用户能就地编辑,选它准没错。
第二种,,lightning-record-view-form,,它给了你更多的控制权。当你想自己来摆放字段的位置、调整布局的时候就用它。它是怎么做到的呢?你可以在它的里面使用 `lightning-output-field` 组件,然后配合 Salesforce 设计系统里面的网格类,像 `slds-grid` 啊,`slds-col` 这些,把字段一个个摆得整整齐齐。这样,你就能做出符合自己设计要求的只读表单布局,但还是依托于标准表单的渲染,不用自己处理数据格式。
最后一种,是最灵活、也是开发中最常用的——,使用 `getRecord` 这个线绳适配器,搭配 `getFieldValue` 方法,。线绳适配器的好处是反应式的,什么意思呢?就是当记录的数据发生变化时,你拿到的数据会自动更新,UI 也会跟着刷新。你首先要导入一个 schema 里面的字段引用,比如 `import ACCOUNT_NAME from '@salesforce/schema/Account.Name'`,然后用 `getRecord` 拉数据,再用 `getFieldValue` 从返回结果里取出你要的具体字段值。拿到值之后,你完全可以用任意的标准组件去渲染,比如用 `lightning-formatted-text` 显示普通文本,用 `lightning-formatted-email` 显示邮箱链接,等等。这样你就拥有了完全的 UI 自由。
如果你需要访问父记录上的字段,也很简单,在 schema 导入里用点号连接就行,比如 `import OWNER_EMAIL from '@salesforce/schema/Account.Owner.Email'`,然后用同样的方法取值就好了。这样一来,你就能轻松在组件里展示关联对象的信息了。
简单总结一下:如果你追求快速省事,选第一种;如果要在标准布局上做点定制,选第二种;如果你需要拿到数据后随意拼接界面,或者要访问父记录、做复杂逻辑,第三种线绳适配器模式就是你的最佳拍档。
好了,今天这页的内容就是这些,同学们可以动手去试试,感受一下三者的区别。有什么问题随时提问哦!
关键词
LWC
Lightning Web Components
Salesforce