一线从业者撰写的中文原创内容,从入门到架构师,覆盖Salesforce全技术栈
Salesforce 为 Lightning Web 组件提供了多种处理数据的方法。始终从最简单的解决方案开始,然后转向允许根据需要进行更多自定义的解决方案。 数据准则 处理 Salesforce 数据的最简单方法是使用基于 Lightning 数据服务 (LDS) 构建的基本 Lightning 组件。 如果您需要更大的灵活性,请直接使用 Lightning 数据服务线路适配器。每个电线适配器提......
Lightning Web 组件调度标准 DOM 事件。组件还可以创建和调度自定义事件。使用事件向上传达组件包含层次结构。例如,子组件 调度一个事件,以告知其父组件 ,用户选择了它。c-todo-itemc-todo-app Lightning Web 组件中的事件基于 DOM 事件构建,DOM 事件是每个浏览器中可用的 API 和对象的集合。 DOM 事件系统是一种包含这些元素的编程设计模式。 ......
注意 此功能是一项测试版服务。客户可自行决定是否试用此类测试版服务。对测试版服务的任何使用均受协议和条款中提供的适用测试版服务条款的约束。 在 LWC 中使用第三方 Web 组件可以节省在 LWC 中重新创建相同组件的时间。要使用第三方 Web 组件,请先启用 Lightning Web Security。Lightning Locker 不支持使用自定义元素,自定义元素是第三方 Web 组件的关......
Lightning Web 组件的生命周期由框架管理。框架创建组件,将它们插入到 DOM 中,呈现它们,然后将它们从 DOM 中删除。它还监视组件的属性更改。 生命周期流程 此图显示了从创建到渲染的组件生命周期流程。 此图显示了从 DOM 中删除组件实例时发生的情况。 创建组件时运行代码 该方法在创建组件实例时触发。不要在构造过程中向 host 元素添加属性。您可以在任何其他生命周期挂钩中向 ho......
辅助软件和辅助技术使残障用户能够使用您构建的产品。开发组件,以便所有用户都能感知、理解、导航并与之交互。 我们建议您在创建自定义组件时遵循 WCAG 辅助功能指南。 组件辅助功能属性 若要使组件可用于屏幕阅读器和其他辅助技术,请在组件上使用 HTML 属性。HTML 属性描述它们所包含的 UI 元素。辅助功能软件通过大声朗读属性来解释 UI 元素。 辅助功能的一个关键部分是属性的使用。屏幕阅读器向......
Lightning 组件可以访问全局 Salesforce 值,例如标签、资源和用户。 访问静态资源 从作用域模块导入静态资源。静态资源可以是存档(如 .zip 和 .jar 文件)、图像、样式表、JavaScript 和其他文件。@salesforce/resourceUrl 在导入静态资源之前,请先创建并上传文件。 创建并上传静态资源 要创建和上传静态资源,请执行以下操作: 在“设置”中,输入......
文档对象模型 (DOM) 表示 HTML 页面,以便您可以使用 JavaScript 或标准 DOM API 处理其内容、结构和样式。例如,您可以使用标准 DOM API 访问组件中的元素,无论是否使用模板引用选择器。虽然我们不建议操作 DOM,但某些第三方 JavaScript 库需要接管 DOM。querySelector() 有关 DOM 的更多信息,请参阅 MDN Web 文档:文档对象模......
每个组件都必须有一个 JavaScript 文件。Lightning Web 组件中的 JavaScript 文件是 ES6 模块。 共享 JavaScript 代码 若要在组件之间共享代码,请在服务组件中创建一个 ES6 模块,并使用标准 JavaScript 语法导出要共享的变量或函数。 ES6 模块是一个 JavaScript 文件,它显式导出其他模块可以使用的变量或函数。模块使构建代码变得......
在组件的 JavaScript 类中声明字段。在组件的模板中引用它们以动态更新内容。 字段和属性几乎是可以互换的术语。组件作者声明类中的字段。类的实例具有属性。对于组件使用者来说,字段是属性。在 Lightning Web 组件中,只有组件作者用来修饰的字段才能作为对象属性公开提供给使用者。@api 属性和属性几乎是可以互换的术语,可能会造成混淆。一般来说,在 HTML 中我们谈论属性,在 Jav......
您可以在另一个组件的主体中添加组件。组合使您能够从更简单的构建块组件构建复杂的组件。 注意 允许继承,但不建议这样做,因为组合通常更有效。若要在组件之间共享逻辑,请使用仅包含逻辑的模块。请参阅其他 JavaScript 文件。如果您选择使用继承,请注意,它不适用于 Lightning Locker 下的命名空间。您必须启用 LWS 才能跨命名空间使用继承。不能在任一安全体系结构中扩展命名空间。li......
要为您的组件提供 Lightning Experience 外观,请使用 Lightning Design System。要走自己的路,请编写自己的 CSS。 使用 Lightning Design System 设置组件样式 Salesforce Lightning Design System (SLDS) 是一个 CSS 框架,可提供与 Lightning Experience 一致的外观。使......
Lightning Web 组件是具有自己的 API 的可重用自定义 HTML 元素。 请查看这些部分,了解有关创建自己的 Lightning Web 组件的更多信息。 定义组件 HTML 模板 CSS的 组成 字段、属性和特性 Javascript的 访问 Salesforce 资源 组件可访问性 生命周期钩子 定义组件 呈现 UI 的 Lightning Web 组件必须包含 HTML 文件、......
使用 Lightning Web 组件 (LWC) 框架在 Salesforce 平台上构建自定义用户界面、Web 和移动应用程序以及数字体验。Lightning Web 组件是使用 HTML 和 JavaScript 构建的自定义 HTML 元素。 Salesforce 提供基于 Lightning Design System 构建的基本 Lightning Web 组件,用作自定义体验的构建块......
本附录提供了 Apex 应用程序的示例。这是一个比 Hello World 示例。 运输发票演练 装运发票示例代码 装运发票示例演练 装运发票示例代码 装运发票示例演练 本节中的示例应用程序包括混合了的传统 Salesforce 功能 与 Apex。Apex 的许多句法和语义特征,以及常见的习语,是 在此应用程序中进行了说明。 注意 装运发票示例需要自定义对象。您可以 您可以自行创建这些代码,或者......
您无法在 Salesforce 生产组织中开发 Apex。您的开发工作是 在沙盒或 Developer Edition 组织中完成。您可以使用以下方法部署 Apex: 更改集 Salesforce 扩展 针对 Visual Studio Code 蚂蚁迁徙 工具 肥皂 应用程序接口 使用元数据 API 或工具 API 的第三方工具 带有 Salesforce DX 插件的 VS Code 部署时编......
Apex 提供了一个测试框架,允许您编写单元测试,运行 测试,检查测试结果,并有代码覆盖率结果。 让我们来谈谈单元测试、测试的数据可见性以及可用的工具 在 Lightning 平台上用于测试 Apex。我们还将介绍测试最佳实践 以及一个测试示例。 注意 若要保护数据的隐私,请确保测试错误消息和异常 详细信息不包含任何个人数据。Apex 异常处理程序和测试 框架无法确定敏感数据是否包含在用户定义的消......
异常会记录中断正常代码流的错误和其他事件 执行。 语句用于 生成异常,而 、 和 语句用于从异常中正常恢复。throwtrycatchfinally 有许多方法可以处理代码中的错误,包括使用断言(如调用)或返回错误 代码或布尔值,那么为什么要使用异常呢?使用异常的优点是 它们简化了错误处理。异常从被调用的方法冒泡到 caller,根据需要设置多个级别,直到找到处理错误的语句。这种冒泡缓解了 您不必......
在沙盒中开发 Apex 代码,并使用开发人员控制台对其进行调试,然后进行调试 原木。对代码进行单元测试,然后使用包将其分发给客户。 调试ApexApex 提供调试支持。您可以使用开发人员控制台和调试日志来调试 Apex 代码。 测试 Apex Apex提供了一个测试框架,允许您编写单元测试、运行测试、检查测试结果以及获得代码覆盖率结果。 部署 Apex您无法在 Salesforce 生产组织中开发......
可以使用类提供的方法保护数据。 Crypto 类中的方法提供标准 用于创建摘要、消息身份验证代码和签名的算法 作为加密和解密信息。这些可用于保护 Salesforce,或与 Google 或 Amazon 等外部服务集成 网络服务 (AWS)。Crypto 示例:集成 Amazon WebServices 以下示例演示了 Amazon WebServices 与 销售人员: public clas......
Apex 提供了实用程序类,用于创建和解析 使用流和 DOM 的 XML 内容。 本节包含有关 XML 支持的详细信息。 使用 Streams读取和写入 XML Apex 提供了用于使用流读取和写入 XML 内容的类。 使用 DOM读取和写入 XML Apex 提供了使您能够使用 DOM(文档对象模型)处理 XML 内容的类。 使用流读取和写入 XML Apex 提供了用于使用流读取和写入 XML......
Apex 中的 JavaScript 对象表示法 (JSON) 支持可实现 Apex 的序列化 对象转换为JSON格式,并对序列化的JSON内容进行反序列化。Apex 提供了一组类,用于公开 JSON 序列化的方法和 反序列化。下表描述了可用的类。 类描述System.JSON包含用于将 Apex 对象序列化为 JSON 格式的方法,以及 反序列化使用此类中的方法序列化的 JSON 内容。seri......
Apex 允许您使用标注与外部 SOAP 和 REST Web 服务集成。 您可以使用用于 JSON、XML、数据安全和编码的实用程序。通用实用程序 对于带有文本字符串的正则表达式,也提供了。 使用 Apex 调用标注 JSON 支持 Apex 中的 JavaScript 对象表示法 (JSON) 支持将 Apex 对象序列化为 JSON 格式,并对序列化的 JSON 内容进行反序列化。 XML ......
支持类允许您与支持中心常用的记录进行交互, 例如营业时间和案例。 与企业合作 小时 营业时间用于指定营业时间 您的客户支持团队运作的地方,包括多项业务 多个时区的小时数。本示例查找时间 1 从 startTime 开始的工作时间,返回本地的 Datetime 时区。它通过查询 BusinessHours 来获取默认工作时间。 此外,它还调用该方法。 BusinessHoursadd // Get ......
Salesforce Sites 允许您通过继承来构建自定义页面和 Web 应用程序 闪电平台功能,包括分析、工作流程和审批,以及可编程 逻辑。 您可以使用 和 类的方法在 Apex 中管理您的 Salesforce 站点。SiteCookie 重写 Salesforce 站点的 URL 站点提供内置逻辑,可帮助您显示用户友好的 URL 和指向站点访问者的链接。创建规则以重写在地址栏中键入的、从书......
通过 Apex 的 Salesforce 报告和仪表板 API,您可以以编程方式访问您的 报表生成器中定义的报表数据。 该 API 使您能够将报表数据集成到任何 Web 或移动应用程序中,内部或 在 Salesforce 平台之外。例如,您可以使用 API 触发带有 每个季度表现最好的销售代表的快照。 通过 Apex 的 Salesforce 报告和仪表板 API 彻底改变了您访问和 可视化您的数......
Apex 代码可以通过任何 Salesforce Connect 适配器访问外部对象数据。使用 Apex Connector Framework,用于为 Salesforce Connect 开发自定义适配器。自定义适配器可以从外部系统检索数据并在本地合成数据。 Salesforce Connect 在 Salesforce 外部对象中表示该数据,使用户和 Lightning Platform 可......
Salesforce Knowledge 是一个知识库,用户可以在其中轻松创建和管理 内容,称为文章,并快速查找和查看他们需要的文章。 使用 Apex 访问以下 Salesforce Knowledge 功能: 知识管理除了 Salesforce 用户界面外,用户还可以使用 Apex 编写、发布、存档和管理文章。 升级的搜索词 升级的搜索词对于推广 Salesforce Knowledge 文章非......
Lightning Platform 平台缓存层提供更快的性能和更好的可靠性 缓存 Salesforce 会话和组织数据时。指定要缓存的内容以及不缓存多长时间 使用自定义对象和设置或重载 Visualforce 视图状态。平台缓存 通过分配缓存空间来提高性能,使某些应用程序或操作不会 从他人那里窃取容量。 因为 Apex 在多租户环境中运行,缓存数据在内部并存 缓存数据,缓存对核心 Salesfo......
若要为权限集组提供 Apex 测试覆盖率,请使用类中的方法编写测试。 System.Test.calculatePermissionSetGroup() 该方法强制立即计算 聚合指定权限集组的权限。由于强制计算很重要 针对 Apex CPU 限制,并且可能需要复杂的数据设置,最佳做法是尽量减少 执行此操作的次数。calculatePermissionSetGroup() 将此测试设置为在“测试设置......
Salesforce使用类型和组件来表示组织配置和 定制。元数据用于管理员控制或配置的组织设置 已安装的应用和程序包应用的信息。 使用命名空间中的类访问 来自 Apex 代码中的任务的元数据,包括:Metadata 自定义应用安装或升级 - 在安装(或升级)期间或之后,您的应用可以 创建或更新元数据,让用户配置您的应用。 安装后自定义应用程序 - 安装应用程序后,您可以在 Apex 允许管理员使用......
Flow Builder 允许管理员构建应用程序(称为流),这些应用程序通过收集来自动执行业务流程 数据并在您的 Salesforce 组织或外部系统中执行某些操作。 例如,您可以创建一个流来编写客户支持中心或 为销售团队生成实时报价。您可以在 Visualforce 页面或 Aura 组件中嵌入流程,然后 在 Apex 控制器中访问它。 获取流变量您可以在 Apex 中检索特定流的流变量。 从可......
您可以使用 Apex 处理入站和出站电子邮件。 将 Apex 与以下电子邮件功能结合使用: 入站电子邮件使用 Apex 处理发送到 Salesforce 的电子邮件。 出站电子邮件使用 Apex 处理从 Salesforce 发送的电子邮件。 入站电子邮件 使用 Apex 处理发送到 Salesforce 的电子邮件。 您可以使用 Apex 接收和处理电子邮件和附件。Apex 收到电子邮件 电子邮......
Apex 中的 DataWeave 使用 Mulesoft DataWeave 库从一个库读取和解析数据 格式化、转换并以其他格式导出。您可以创建 DataWeave 脚本 作为元数据,并直接从 Apex 调用它们。与 Apex 一样,DataWeave 脚本在 Salesforce 应用程序服务器,在执行时强制执行相同的堆和 CPU 限制 法典。 企业应用程序通常需要在 CSV 等格式之间转换数......
为 ChatterMessage 编写一个触发器,以自动审核 组织或 Experience Cloud 站点中的私人消息。使用触发器确保消息 符合贵公司的邮件策略,并且不包含列入黑名单的内容 的话。 适用于:Salesforce Classic适用于:Enterprise、Performance、Unlimited 和 Developer Edition 用户权限 需要要保存 ChatterMes......
本主题介绍用于使用公共 Connect 的类和方法 Apex 功能。 也可以直接转到 ConnectApi 命名空间参考内容。 使用操作链接 操作链接是源元素上的按钮。单击操作链接可以将用户带到网页、启动文件下载或调用对 Salesforce 或外部服务器的 API 调用。操作链接包括 URL 和 HTTP 方法,并且可以包含请求正文和标头信息,例如用于身份验证的 OAuth 令牌。使用操作链接将......
在 Apex 中使用 Connect 开发自定义体验 Salesforce的。Connect in Apex 提供对 B2B Commerce 的编程访问, CMS 托管内容、Experience Cloud 站点、主题等。创建 Apex 显示 Chatter 摘要的页面,发布带有提及和主题的摘要项目, 并更新用户和群组照片。创建更新 Chatter 的触发器 饲料。 许多 Connect RES......
查看平台的演练、用例和参考资料。 CommercePayments 若要查看类参考文档,请转到 CommercePayments 命名空间。CommercePayments 支付网关适配器 支付网关适配器代表了 Salesforce 中的支付平台与外部支付网关之间的桥梁。 付款授权撤销服务授权撤销是通过解除客户付款方式中的资金冻结来否定授权的交易。 令牌化服务信用卡令牌化过程将敏感的客户信息替换为......
Salesforce 用户界面的许多功能都在 Apex 中公开,因此您可以 在 Lightning 平台中以编程方式访问它们。例如,您可以编写 Apex 代码 发布到 Chatter 摘要,或使用审批方法提交和审批流程 请求。 操作 创建快速操作,并将其添加到 Salesforce Classic 主页、Chatter 选项卡、Chatter 小组和记录详细信息页面。从标准快速操作(例如创建和更新......
Apex Transactions 确保数据的完整性。Apex 代码作为原子的一部分运行 交易。调速器执行限制确保有效利用资源 Lightning Platform 多租户平台。 大多数调控器限制是按事务设置的,有些则不是,例如 24 小时限制 限制。 为确保 Apex 遵守调速器限制,应使用某些设计模式, 例如查询中的批量调用和外键关系。 Apex 事务Apex 事务表示作为单个单元执行的一组操......
您可以使用电子邮件服务来处理 入站电子邮件。例如,您可以创建自动创建的电子邮件服务 基于邮件中的联系人信息的联系人记录。您可以将每个电子邮件服务与一个或多个 Salesforce 生成的电子邮件相关联 用户可以向其发送消息进行处理的地址。授予多个用户访问权限 对于单个电子邮件服务,您可以: 关联多个 Salesforce 生成的电子邮件地址与电子邮件服务并分配 这些地址给用户。 关联单个 Sale......
您可以将 Apex 方法公开为 SOAP Web 服务,以便外部应用程序 可以访问您的代码和应用程序。 若要公开 Apex 方法,请使用 Web 服务方法。 提示 Apex SOAP Web 服务允许外部应用程序调用 Apex 方法 通过 SOAP Web 服务。Apex 标注使 Apex 能够调用外部 Web 或 HTTP 服务业。 Apex REST API 将您的 Apex 类和方法公开为 ......
可以使用触发器调用 Apex。Apex 触发器使您能够执行 在更改 Salesforce 记录之前或之后执行自定义操作,例如插入、更新或 删除。触发器是在以下类型的操作之前或之后执行的 Apex 代码: 插入 更新 删除 合并 更新插入 取消删除 例如,您可以在将对象的记录插入到 数据库,在删除记录之后,甚至在从回收中恢复记录之后 站。 您可以为支持触发器的顶级标准对象定义触发器,例如 联系人或客......
您可以在以下位置以编程方式访问 Salesforce 用户界面的许多功能 Apex,您可以与外部 SOAP 和 REST Web 服务集成。您可以运行 Apex 代码 使用多种机制。Apex 代码在原子事务中运行。 调用 Apex 您可以使用触发器、异步或作为 SOAP 或 REST Web 服务运行 Apex代码。 Apex 事务和调速器限制Apex 事务可确保数据的完整性。Apex 代码作为原......
自定义设置类似于自定义对象。应用程序开发人员可以创建自定义 数据集,并关联组织、配置文件或特定用户的自定义数据。都 自定义设置数据在应用程序缓存中公开,无需 对数据库进行重复查询的开销。公式字段、验证规则、流、Apex 和 然后,SOAP API 可以使用此数据。 警告 保护 仅适用于标记为受保护并安装到订阅者的自定义设置 组织作为托管包的一部分。否则,它们将被视为公共习俗 设置,并且对所有配置文......
了解安全性 Apex 和 Visualforce 页面的强大组合使 Lightning Platform 开发人员向 Salesforce 或 创建一个在 Lightning 平台内运行的新独立产品。但和 任何编程语言,开发人员都必须认识到潜在的安全相关 陷阱。 Salesforce 在 Lightning Platform 中整合了多项安全防御措施。但 粗心的开发人员仍然可以绕过内置的防御措施,......
当您使用 Apex 时, 代码的安全性至关重要。您需要为 Apex 类添加用户权限并强制执行 共享规则。请继续阅读,了解 Apex 托管共享和 获取一些安全提示。 强制执行共享规则 强制执行对象和字段权限 对数据库操作强制实施用户模式 通过使用带有特殊关键字的 SOQL 或 SOSL 查询,或者使用 DML 方法重载,可以在用户模式下运行数据库操作,而不是在默认系统模式下运行数据库操作。 使用 s......
Dynamic Apex 通过为开发人员提供 能够: 访问 sObject 和字段描述信息描述信息提供有关 sObject 和字段属性的元数据信息。 例如,sObject 的描述信息包括 该类型的 sObject 支持创建或取消删除等操作, sObject 的名称和标签、sObject 的字段和子对象, 等等。字段的描述信息包括 字段有默认值,是否为计算字段,类型 的领域,依此类推。请注意,描述信......
您可以在列表、集和映射中管理 sObject。 sObjects 列表 列表可以包含其他类型的元素中的 sObjects。sObject 列表可用于批量处理数据。 对 sObject 列表进行排序 使用该方法,可以对 sObject列表进行排序。List.sort 扩展 sObject 和列表表达式 对象集 集可以包含 sObject 以及其他类型的元素。 sObject 映射映射键和值可以是任何......
您可以评估 Salesforce 对象查询语言 (SOQL) 或 Salesforce 对象搜索 语言 (SOSL) 语句在 Apex 中动态,方法是将语句括在正方形中 括弧。 SOQL 语句 SOQL 语句的计算结果为方法查询的 sObjects、单个 sObject 或 Integer 列表。count例如,您可以检索名为 顶点: List<Account> aa = [SELECT Id, ......
以下是您可能想了解的有关使用数据操作语言的一些事项。 设置 DML 选项 交易控制 在 DML 操作中不能一起使用的 sObject 某些 sObject(有时称为设置对象)上的 DML 操作不能与同一事务中其他 sObject 上的 DML 混合使用。之所以存在此限制,是因为某些 sObject 会影响用户对组织中记录的访问。您必须在不同的事务中插入或更新这些类型的 sObject,以防止使用不......
您可以在 Lightning 平台持久性层中添加数据并与之交互。这 sObject 数据类型是保存数据对象的主要数据类型。您将使用数据 操作语言 (DML) 用于处理数据,并使用查询语言检索数据, 例如(),等等。 使用 sObjects在本开发人员指南中,该术语是指可以存储在 Lightning 平台数据库中的任何对象。sObject 数据操作语言Apex 使您能够在数据库中插入、更新、删除或还......
为了帮助向后兼容,类和触发器与版本一起存储 特定 Salesforce API 版本的设置。 如果 Apex 类或触发器引用组件,例如 自定义对象,在已安装的托管包中,每个托管包的版本设置 类引用的包也会被保存。这确保了作为 Apex, API,并且托管包中的组件在后续发布的版本中不断发展,一个 类或触发器仍绑定到具有特定已知行为的版本。 为已安装的包设置版本可确定公开的 接口和任何 Apex 代......
Apex 提供了多种异步运行 Apex 代码的方法。选择 最适合您需求的异步 Apex 功能。 下表列出了异步 Apex 功能以及何时使用每个功能。 异步 Apex 功能何时使用可排队的Apex启动长时间运行的操作并获取其 ID将复杂类型传递给作业链接作业预定Apex计划 Apex 类按特定计划运行批处理Apex对于需要批量执行的具有大量数据的长时间运行的作业,例如 作为数据库维护作业对于需要比常......
Apex 类和 Java 类的工作方式相似,但有一些重要的 差异。以下是 Apex 类和 Java 类之间的主要区别: 内部类和接口只能在外部内部声明一个级别 类。 静态方法和变量只能在顶级类中声明 定义,而不是在内部类中。 内部类的行为类似于静态 Java 内部类,但不需要关键字。内部类可以 具有像外部类一样的实例成员变量,但没有隐式 指向外部类的实例的指针(使用 关键字)。staticthis......
通常,所有类型信息在运行时都可用。这意味着 Apex 启用强制转换,即将一个类的数据类型分配给一个数据 另一个类的类型,但仅当一个类是另一个类的子类时。使用铸造 当您要将对象从一种数据类型转换为另一种数据类型时。 在以下示例中,扩展 类 .因此,它是一个子类 那个班级。这意味着您可以使用强制转换将对象与父对象一起分配 数据类型 () 添加到对象的 子类数据类型 ()。CustomReportRep......
Apex 提供了 if-else 语句、switch 语句和循环来控制 代码执行。语句通常按照它们出现的顺序逐行执行。 使用控制流语句,可以根据某个条件使 Apex 代码执行, 或者让代码块重复执行。 条件 (If-else) 语句 Apex 中的条件语句的工作方式与 Java 类似。 Switch 语句 Apex 提供了一个语句,用于测试表达式是否与多个值之一匹配,并相应地分支。switch L......
与 Java 一样,您可以在 Apex Class中创建类。类是用于创建对象的模板或蓝图。对象是类的实例。 例如,该类描述整个购买 订单,以及您可以使用采购订单执行的所有操作。类的实例是特定的采购订单 您发送或接收的内容。PurchaseOrderPurchaseOrder 所有对象都有状态和行为,即 对象知道自己,以及对象可以做的事情。状态 PurchaseOrder 对象(它所知道的对象)包括......
接口就像一个类,其中没有任何方法 已实现 - 方法签名存在,但每个方法的主体为空。自 使用接口,另一个类必须通过为所有方法提供主体来实现它 包含在接口中。 接口可以为代码提供抽象层。他们分离特定的 从该方法的声明中实现方法。这样你就可以拥有 基于特定应用程序的方法的不同实现。 定义接口类似于定义新类。例如,一家公司可以有 两种类型的采购订单,一种来自客户,另一种来自客户 他们的员工。两者都是一种采......
Apex 提供了 关键字 final, instanceof, super, this, transient, with sharing and without sharing 使用 final 关键字 使用 instanceof 关键字 使用 super 关键字 使用 this 关键字 使用 transient 关键字 使用 with sharing、without sharing 和 inhe......
附注 Apex 注解修改了方法或类的使用方式,类似于 Java 中的注解。注释使用初始符号定义,后跟相应的关键字。 @ 若要向方法添加批注,请在方法或类之前指定它 定义。例如: global class MyClass { @Future Public static void myMethod(String a) { //long-running Apex code } } Apex 支持以下注解......
什么是Apex? Apex 是一种强类型、面向对象的编程语言,允许开发人员 在 Salesforce 服务器上执行流和事务控制语句,并结合 对 API 的调用。使用看起来像 Java 的语法,并且像存储的数据库一样 过程中,Apex 使开发人员能够将业务逻辑添加到大多数系统事件中,包括 按钮单击、相关记录更新和 Visualforce 页面。Apex 代码可以通过以下方式启动 Web 服务请求和来......
Apex 就像 Salesforce 的 Java。它使您能够添加数据并与之交互 Lightning 平台持久性层。它使用类、数据类型、变量和 if-else 语句。您可以根据条件使其执行,也可以执行代码块 反复。 数据类型和变量Apex 使用数据类型、变量和相关语言结构,例如枚举、常量、表达式、运算符和赋值语句。 控制流语句Apex 提供 if-else 语句、switch 语句和循环来控制代码......
表达式是由变量、运算符和方法调用组成的构造,这些变量、运算符和方法调用 计算结果为单个值。 表达式是由变量、运算符和方法调用组成的构造,其计算结果为单个值。 表达式运算符 表达式可以使用运算符相互连接以创建复合表达式。 安全导航运算符 使用安全导航运算符() 替换对 null 引用的显式顺序检查。此运算符使尝试对 null 值进行操作的表达式短路,并返回 null 而不是引发 NullPointe......
学习目标 完成本单元后,您将能够: 列出Lightning Web组件的优点。 描述Aura组件和Lightning Web组件如何协同工作。 确定何时迁移组件。 一种新的编程模型 您现在可以在两种编程模型中开发Lightning组件:原始模型(Aura组件)和新模型(Lightning Web组件)。就在您掌握了Aura组件的开发之后,我们就提供了Lightning Web组件!为什么,哦为什么......
学习目标 完成本单元后,您将能够: 将HTML和标记从Aura组件迁移到Lightning Web组件。 将CSS从Aura组件迁移到Lightning Web组件。 梦之屋应用 比较Aura Component和Lightning Web Components编程模型的最佳方法是查看两个模型中编写的相似组件的代码。 我们将研究DreamHouse应用程序中的某些组件,该应用程序是Salesfor......
学习目标 完成本单元后,您将能够: 将JavaScript从Aura组件迁移到Lightning Web组件。 在Aura组件和Lightning Web组件之间共享代码。 使用JavaScript模块 JavaScript是Lightning Web组件的心脏。没有JavaScript,组件就是毫无生气的主要是HTML。当我们看到Aura组件中的属性如何映射到JavaScript属性时,我们可以......
学习目标 完成本单元后,您将能够: 使用基本组件创建用于处理单个记录的表单。 使用有线服务获取数据。 创建和更新数据。 调用Apex方法。 没有任何数据的组件可能看起来不错,但内部感觉有些空白。在本单元中,我们填补了这一空白,并比较了Aura和Lightning组件如何读写Salesforce数据。 如果您为Aura组件开发了Apex类,则可以在Lightning Web组件中重用Apex。但是,......
学习目标 完成本单元后,您将能够: 组成组件。 使用插槽。 列出两种编程模型的数据绑定行为之间的差异。 您可以在另一个组件的主体内添加组件。这种组件组成使您可以从更简单的构建块组件中构建复杂的组件。 在大型应用程序中,将应用程序与一组较小的组件组合在一起以使代码更易于重用和维护是很有用的。 的 闪电 命名空间包含许多基本组件,例如 闪电按钮,可用于构建组件。有关更多详细信息,请参见组件库。 了......
学习目标 完成本单元后,您将能够: 描述两种编程模型在事件上的差异。 将事件从Lightning Web组件发送到Aura组件。 单独隔离的组件可能很有用,但是当组件开始相互交谈时,真正的应用程序魔术就会发生。这就是事件的源头。使用事件在组件之间进行通信是Web标准,而事件对于Aura组件和Lightning Web组件中的通信都是至关重要的。 组件事件成为DOM事件 将Aura组件中的组件事件迁......
学习目标 完成本单元后,您将能够: 列出闪电组件框架的主要优点。 说明如何同时使用低代码和专业代码工具来提高生产率。 描述构成Lightning Web组件的标准,服务和文件。 嘿Visualforce开发人员,欢迎来到闪电体验! 如果您是经验丰富的Visualforce开发人员,并且希望使用最佳的Lightning Experience工具构建现代且引人入胜的用户体验,那么您将找到合适的位置。 ......
学习目标 完成本单元后,您将能够: 解释Visualforce和Lightning Web组件之间的体系结构差异。 将Visualforce编码概念映射到Lightning Web Components。 在本单元中,您将学习Visualforce知识如何应用于Lightning Web Components体系结构和编码概念。 闪电Web组件架构 Visualforce是服务器端的模板语言。当客......
学习目标 完成本单元后,您将能够: 创建一个SFDX项目。 创建一个闪电Web组件。 应用架构和编码概念。 在Visualforce中,要执行UI更改,有时您需要在服务器上重新呈现页面。如您所知,在Lightning Web Components架构中,重新渲染发生在客户端上。您学习了如何在JavaScript中设置属性以更改组件状态,从而使Lightning Web Components引擎重新......
学习目标 完成本单元后,您将能够: 意识到根据特定用例选择最佳方式使用Salesforce数据的重要性。 描述闪电数据服务如何与Visualforce中的标准控制器进行比较。 说明在Lightning Web组件中使用Apex与在Visualforce中使用Apex有何不同。 Visualforce与Lightning Web组件中的数据访问 作为Visualforce开发人员,您熟悉在页面中使用......
学习目标 完成本单元后,您将能够: 说明如何在Lightning Web组件中实现导航模式。 评估是将特定的Visualforce功能移至Lightning还是将其保留在Visualforce中。 描述Lightning Web组件如何与Visualforce页面交互。 我们已经看到了如何使用一些Visualforce概念来理解Lightning Web Components基础。我们还看到了如何......
学习目标 在此项目中,您将: 将Visualforce部署到LWC示例应用程序。 探索从Visualforce到LWC的示例应用程序及其示例代码。 了解如何将五个关键模式实现为Lightning Web组件。 欢迎使用Visualforce开发人员!我们很高兴你在这里。我们凭借在Visualforce中的开发经验,特别为您编写了该项目。 Visualforce转LWC示例应用程序 为什么我们创建V......
使用应用程式 您可以通过两种方式使用此应用。因为您克隆了visualforce-to-lwc存储库,所以可以简单地在Visual Studio Code中打开该文件夹并挖掘源代码。但是您还刚刚在Trailhead Playground中安装了一个闪亮的新应用程序,因此让我们开始吧! 在这个项目中,我们探索了五个关键模式的例子。 查看包含来自父记录的数据的记录。 列出记录并带有打开每个记录的链接。 ......
学习目标 在此项目中,您将: 构建一组简单的Lightning Web组件。 从单个记录,然后从记录列表中检索并显示数据。 将功能封装到子组件中。 使用事件进行跨组件通信。 介绍 在这个项目中,您将通过创建一个让公园管理员跟踪熊的应用程序来尝试Lightning Web Components的基本概念。 Lightning Web Components是用于构建Lightning组件的新编程模型。......
你会做什么 熊熊游乐园管理员需要您的帮助来追踪在公园里游荡的熊。他们已经在Salesforce中输入了一些信息,但是他们需要您为他们提供定制的应用程序体验。 创建Bear位置组件 在VS Code中,右键单击该lwc文件夹,然后单击SFDX:Create Lightning Web Component。 命名组件bearLocation。 编辑bearLocation.js-meta.xml文件,......
创建熊列表组件 公园护林员希望直接从其主页上看到熊的目录。您的任务是实施该清单。 在VS Code中,右键单击该lwc文件夹,然后单击SFDX:Create Lightning Web Component。 命名组件bearList。 编辑bearList.js-meta.xml文件,并替换<isExposed>false</isExposed>为这些行。 <isExposed>true</isE......
创建一个子组件并与之交互 在前面的步骤中,我们的代码库有所增加。现在,花一点时间将我们的清单列表组件重构为几个较小的组件。我们将把熊牌的代码移到一个新的组件中。 创建Bear Tile组件 在VS Code中,右键单击该lwc文件夹,然后单击SFDX:Create Lightning Web Component。 命名组件bearTile。 打开bearList.html并剪切<!-- Start......
更新Bear List组件 公园护林员对您有最后要求。他们希望在过滤熊名单时在地图上找到熊。您必须创建一个熊图组件并修改熊列表,以便将事件发送到地图。让我们从更新熊列表开始。 编辑bearList.js文件。 在下面添加以下代码import { NavigationMixin } from 'lightning/navigation';: import { publish, MessageCont......
学习目标 在此项目中,您将: 构建彼此通信的Lightning Web组件。 从子组件与其父组件进行通信。 从父组件与子组件进行通信。 从组件通信到不相关的组件。 该项目是为具有一定的Lightning Web组件经验的Salesforce开发人员设计的。如果您还不熟悉Lightning Web组件,我们建议您 在继续进行此项目之前,先完成Build Lightning Web Component......
父母与孩子沟通 为了启用从父组件到子组件的通信,子组件公开一个属性或函数以使其公开。然后,父母可以更新孩子的公共财产或调用孩子的公共职能。 此外,如果要添加一些功能,请在子组件上将public属性更新为getter和setter。 让我们从简单的公共属性更新开始。另一个业务部门找到了您构建的分子。他们想使用它并添加到它。他们的第一个要求是能够设置计数器的起始编号。我们不想进行任何会影响原始业务用例......
在不相关的组件之间通信 要在DOM中的子树之间通信(以及在某些情况下,登录到同一组织的不同浏览器窗口之间的通信),请使用闪电消息服务(LMS)。LMS是一项发布和订阅服务,可促进Lightning Web组件,Aura组件和Visualforce页面之间的通信。 除非您同时控制两个组件和一个公共父组件,否则请使用LMS进行不相关组件之间的通信。LMS功能强大,有效且易于使用,但不要在不必要时诱使您......
学习目标 在此项目中,您将: 设置您的Salesforce开发人员环境。 创建一个Salesforce DX项目。 将Lightning Web组件转换为Salesforce平台。 使用Apex从Salesforce检索数据。 介绍 在此项目中,您将使用Lightning Web Components Open Source作为Node.js应用程序开发的会议管理应用程序迁移到Salesforce......
创建一个Salesforce应用 在此步骤中,您将创建一个Salesforce DX项目并构建您的第一个Lightning App。 创建一个Salesforce DX项目 现在已经设置了Salesforce CLI,创建一个新项目并授权您的Trailhead Playground。 打开命令提示符,例如Windows上的cmd或macOS上的终端。 使用此命令创建一个新的Salesforce D......
转换Salesforce平台的组件 在此步骤中,您将为Node.js应用程序编写的Lightning Web组件转换为Salesforce平台的组件。 注意 除非另有说明,否则此步骤中的所有操作都将应用于/force-app/main/default/lwc创建的Salesforce DX项目中目录下的文件夹。 复制组件文件 副本app,sessionDetails,sessionList,和sp......
使用Apex检索数据 您在上一个项目中构建的Node.js应用程序运行SOQL查询,以从Salesforce平台检索会话列表。为了在Salesforce上检索该数据,您需要将Node.js后端逻辑转换为Apex代码。Apex是一种强类型的,面向对象的编程语言,它使开发人员可以结合对API的调用在Salesforce服务器上执行流和事务控制语句。 注意 Apex仅在特定的用例中才需要,例如获取记录及......
学习目标 在此项目中,您将: 设置您的Salesforce环境。 在Salesforce中创建具有不同字段类型和关系的数据模型。 从使用Lightning Web Components Open Source构建的会议管理应用程序中验证和获取Salesforce数据。 在你开始之前 在执行此动手项目中的步骤之前,请确保已完成使用Lightning Web Components Open Sourc......
设置您的Salesforce数据模型 在Salesforce中,数据存储在一个对象中。您可以将对象视为项目列表或电子表格。在这里,可以存储和维护按字段分组的信息,例如每个客户的名字和姓氏。 有两种类型的对象:标准对象和自定义对象。标准对象是Salesforce附带的对象。常见的业务对象(例如客户,联系人,潜在客户和机会)都属于该组。 自定义对象是您创建的用于存储特定于您的公司或行业的信息的对象。在......
导入样本数据 现在您已经建立了数据模型,是时候输入数据了。您可以手动输入数据,也可以使用“数据导入向导”将其导入。 感谢Lightning Object Creator,用于会话的数据已被加载。使用数据导入向导将扬声器数据导入到Contact对象中。 下载 此CSV文件(右键单击并选择“另存为”),其中包含扬声器列表。 在您的Trailhead游乐场中,点击,然后 选择设置。 Data Impor......
连接到Salesforce 在此步骤中,您将通过从Salesforce获取会话和演讲者数据来更新Trailhead项目“ 使用Lightning Web Components Open Source构建您的第一个应用程序”中构建的应用程序。 为此,您设置了本地 Express服务器以连接到Trailhead Playground,并提供一个为会议管理应用程序提供数据的端点。 安装套件 第一步是安装......
学习目标 在此项目中,您将: 安装使用Lightning Web Components Open Source所需的工具。 使用Lightning Web Components Open Source创建数据服务模块。 使用Web组件和最新的Web标准创建示例会议管理应用程序。 介绍 Web标准的创新水平达到了前所未有的高度,令人兴奋。现在,需要框架的许多功能已成为标准配置。您不再需要专有的组件模......
修改默认应用 更新index.html文件 在上一步中,您使用该create-lwc-app 工具创建了样板应用程序 。在此步骤中,您将修改默认应用程序并将其变成会议管理应用程序。 您可以使用自己喜欢的代码编辑器完成此项目。我们建议使用 Visual Studio Code,但这不是必需的。我们以VS Code为将来的指示。 打开Visual Studio代码。 在菜单中选择文件>打开。 选择您的......
创建数据服务模块 在JavaScript或Web组件应用程序中,有许多访问数据的策略。在此步骤中,您将创建一个简单的数据服务模块,可以将其导入任何Web组件中以检索会议会话列表。该模块使我们可以通过REST服务访问云中托管的示例数据。您可以使用 此链接在浏览器中调用端点来浏览数据。由于数据以JSON格式存储,因此我们的浏览器无法以漂亮的方式呈现信息。 注意 我们将在本系列的其他项目中探索其他数据访......
创建会话详细信息Web组件 在此步骤中,您将创建一个新的Web组件,该组件显示特定会议会话的详细信息。您还实现了一个简单的导航系统,该系统允许用户在会话列表和会话详细信息之间来回导航。 创建sessionDetails Web组件 首先,让我们创建Web组件的JavaScript文件。 在现有my文件夹下,创建一个名为的新文件夹sessionDetails。 在sessionDetails文件夹中......
准备与对象无关 注意 从Spring '19版本(API版本45.0)开始,您可以使用两个编程模型来构建Lightning组件:Lightning Web组件模型和原始的Aura组件模型。闪电Web组件和Aura组件可以在页面上共存和互操作。此内容涵盖了Aura组件。 有关Lightning Web组件的更多信息,请参见 Build Lightning Web Components路径。 介绍 在......
创建要在Lightning App Builder中使用的组件 尽管我们使用Lightning组件显示指示器标志(并且在以后的步骤中,我们甚至使用Lightning Data Service来获得没有Apex的记录级数据),但这并不意味着我们不需要Apex。实际上,我们需要使用一些Apex来使我们的指标徽章记录以及其他信息可供我们的Lightning组件使用。 在此步骤中,我们将创建一个可感知对象......
创建指标徽章Apex服务 我们已经在Lightning Experience中启动并运行了组件,并连接了一个Apex控制器。现在,我们需要将组件连接到我们的自定义元数据,然后通过在Apex中添加服务并将其与我们已经编写的代码相连接来实现。 创建指标徽章服务类 点击齿轮图标(),然后选择开发者控制台。 单击文件>新建> Apex类。 命名Apex类INDICATOR_Service。 将生成的代码替......
创建指示器徽章闪电组件 现在,我们已经为服务器上的指标徽章奠定了基础,让我们开始有趣的部分:为ZBS用户显示指标。 创建一个徽章组件 我们已经建立了一个外部组件来保存指标,但是仍然需要用一些东西来填充它。让我们构建一个Lightning组件,用于显示各个指示器标志。 在开发人员控制台中,选择“文件”>“新建”>“闪电组件” 命名组件IndicatorBadge,然后单击提交 用以下代码替换生成的代......
📚 本站共收录 1638 篇 Salesforce 中文技术文章,涵盖开发、运维、认证、行业方案等领域。
由一线从业者撰写,持续更新中。