Creating Modals (2 of 3)

DEX601 - Unit 6 Building Advanced Components

📄 第 452 页 🎬 视频课程

课程章节介绍

今天我们来聊聊如何在Salesforce中创建一个模态框(Modal)。模态框是一种常见的用户界面元素,通常用于显示重要信息或收集用户输入。在这个例子中,我们将使用Salesforce的Aura框架来创建一个模态框。 首先,我们来看一下代码的主要部分。这段代码定义了一个名为`handleShowModal`的函数,这个函数的作用是创建并显示一个模态框。 ```javascript handleShowModal: function(component, evt, helper) { var modalBody; var modalFooter; $A.createComponents([ ["c:modalContent",{Id: 'some id'}], ["c:modalFooter",{}] ], function(components, status){ if (status === "SUCCESS") { modalBody = components[0]; modalFooter = components[1]; component.find('overlayLib').showCustomModal({ header: "Application Confirmation", body: modalBody, footer: modalFooter, showCloseButton: true, cssClass: "", closeCallback: function() { alert('You closed the alert!'); } }); } } }) ``` ### 1. ,创建模态框的内容和页脚, - 我们使用`$A.createComponents`方法来动态创建两个组件:`modalContent`和`modalFooter`。 - `modalContent`组件用于显示模态框的主要内容,而`modalFooter`组件则用于显示模态框的底部内容,比如按钮。 ### 2. ,显示模态框, - 当组件成功创建后(即`status === "SUCCESS"`),我们将`modalBody`和`modalFooter`分别赋值给`components[0]`和`components[1]`。 - 然后,我们使用`component.find('overlayLib').showCustomModal`方法来显示模态框。这个方法接受几个参数: - `header`:模态框的标题。 - `body`:模态框的主要内容。 - `footer`:模态框的底部内容。 - `showCloseButton`:是否显示关闭按钮。 - `cssClass`:自定义CSS类。 - `closeCallback`:当模态框关闭时执行的回调函数。 ### 3. ,模态框的内容组件, - `modalContent`组件是一个Aura组件,它包含一个`force:recordEdit`组件,用于编辑记录。这个组件需要一个`Id`属性来指定要编辑的记录。 ```html ``` ### 4. ,关闭模态框时的回调, - 当用户关闭模态框时,会触发`closeCallback`函数,这里我们简单地弹出一个提示框,告诉用户模态框已被关闭。 ### 总结 通过这段代码,我们学习了如何在Salesforce中创建一个模态框,并动态加载内容和页脚。我们还了解了如何使用`force:recordEdit`组件来编辑记录,并在模态框关闭时执行一些操作。 希望这个解释对你有帮助!如果你有任何问题,随时问我。