速成班101
10 模块
5 周数

选项的组成部分

点击复制

用于在网络应用中选择各种选项的组件


与其在URL中使用ID,你可以选择使用特殊的 Select组件来创建过滤,并能够从列表中选择一个国家。之前,我们已经使用了 Relselect组件,它的工作逻辑非常相似,但由于有了 Select,我们不仅可以提供所有可用国家的选择,还可以添加我们自己的选项。

Select 组成部分

让我们看一下 Select设置,该选项将决定哪些国家的城市应该出现在表格中,而且一般来说,已经添加了显示所有可用城市的能力。


当创建一个 Select组件时,它必须被填入选项,从中进行选择。要做到这一点,如在 Relselect,你需要得到一个一般的国家列表。但是,我们不会把这个列表直接发送到 Select而是将其转换为可用的选项,每个选项被表示为一个 Select Option模型。因此,我们将这个 Select Options数组作为一个变量,并在一个循环中用必要的数据填充它。


在这个例子中,重要的 Select Options的字段将是 Label(提议的选项的文本)和 Value(其数字标识符)。将这些值设置为国家的名称和它的ID。

当循环完成后,我们应该再创建并添加一个选项,该选项将显示所有可用的城市,而无需按国家过滤。让我们来设置 Label = WorldValue = 0.

当你选择任何一个选项时,该 Select onChange触发器将被触发。让我们用它来找出所选的选项并将其写入新的全局变量中 Country selected.在这种情况下,有必要做一个额外的检查,如果最后一个选项(所有可用的城市)被选中,那么这个变量的值应该被设置为空(null).

该业务流程的最后一个动作是开始点击 Refresh按钮,这将刷新表中的数据。其业务流程也需要稍作改变,以考虑到新变量的出现。


现在我们可以选择哪个国家的哪些城市应该显示在表中。


最后,让我们看看另一个允许你选择不同选项的组件----。 Dropdown.它的关键区别在于,选择一个特定的选项应该立即触发一些行动,而不是仅仅记住所选的选项。它可以被称为一个具有扩展功能的按钮。

例如,让我们用 Dropdown作为表格中的删除国家按钮的替代。现在它不会立即删除数据库中的条目,而是会调用额外的选项,你可以确认删除或取消删除。

让我们从该组件的一般配置开始。让我们选择它的外观和可用的选项。


接下来,我们将创建业务流程本身。它的第一个动作将是确定记录的 Dropdown被点击的记录。对于普通的按钮,这个值是作为一个 Record ID但在这种情况下,甚至不是 Dropdown本身就会被按下,而是它的子组件具有所需的选项。因此,获得条目ID就有点复杂了。

对于重复的表格元素, Component ID由两部分组成,用一个"-"号隔开。第一部分是标准组件的ID。但第二部分只是记录ID,加上它就可以使重复组件的标识符独一无二。

知道了这一点,我们只需要得到这个ID。因此,我们将把这个字符串分成几个部分(Split string),并找出第二部分的值(index = 1)


作为下一步,我们需要找出被选中的选项。


如果这确实是一个确认删除的选项,那么就运行相应的命令。否则,你可以什么都不做,因为有些动作是不需要的。


现在,从数据库中删除记录可以防止意外点击。

Was this article helpful?
还在寻找答案吗?
加入社区