映射组件的输入字段
组件可以接收输入值以使用自定义输入属性发出或处理数据。 在本文中,您将了解如何使用此类组件,这些组件需要一个或多个输入属性以及给定表或记录的特定架构,并了解如何将组件输入字段映射到数据源的列。
提示
要了解组件中的自定义输入和输出属性有哪些,请参阅组件中的自定义属性。
映射列
使用 RenameColumns() 函数重命名表的一个或多个列,以匹配输入列选择的输入属性架构。
例如,考虑一个需要具有以下格式的表格输入的组件:
Flavor | UnitPrice | QuantitySold |
---|---|---|
Strawberry | 1.99 | 20 |
巧克力 | 2.99 | 45 |
输入属性需要表数据类型:
输入属性的架构类似于以下公式:
Table({Flavor: "Strawberry",UnitPrice: 1.99, QuantitySold:20})
使用此组件的应用具有以下与组件架构不匹配的 IceCreams 表:
FlavorName | Price | SaleNumber |
---|---|---|
Strawberry | 1.99 | 20 |
Chocolate | 2.99 | 45 |
要映射正确的字段,请使用 RenameColumn() 函数重命名预期的列。
RenameColumns(IceCreams,"cra56_flavorname","Flavor","cra56_price","UnitPrice","cra56_salenumber","QuantitySold")
组件预期的输入字段现在已与数据源中的匹配列映射。
映射记录
使用 With() 函数映射单个记录。
例如,从前面的示例继续映射列,应用内组件的自定义输入属性需要具有以下架构的记录类型:
{Flavor: "Strawberry",UnitPrice: 1.99, QuantitySold: 20}
由于 IceCreams 数据源预期列名称为 FlavorName、Price 和 SaleNumber,因此我们需要更改将组件添加到应用后记录的映射。
使用 With() 函数选择 IceCreams 表的列,并将它们映射到组件的输入字段:
With(Gallery3.Selected,{Flavor:FlavorName,UnitPrice:Price,QuantitySold:SaleNumber})
以下动画演示了添加到应用的组件的示例,示例中显示从库(组件上方)中选择的记录:
映射表
使用 ForAll() 函数将记录表与添加到应用的组件预期的记录进行映射。
例如,在映射列示例的末尾,您可以使用 ForAll() 函数将整个表与特定列进行映射,以指向每一行的组件中的字段:
ForAll(IceCreams,{Flavor:FlavorName,UnitPrice:Price,QuantitySold:SaleNumber})
使用下拉选项映射(已弃用)
您可以将高级选项卡用于添加到需要表或记录类型输入属性的应用的组件,然后选择使用下拉选项的字段映射。 默认情况下会分配此映射,除非您手动选择适当的映射字段,否则映射可能不会产生预期的结果。
例如,以下动画显示正在更新以重命名列的公式。 屏幕上的组件不会更改字段映射,因为使用此下拉选项的默认字段选择需要手动更新。
这种使用下拉选项选择映射的方法已弃用。 取而代之的是使用本文前面所述的列、记录或表映射方法。
您仍然可以使用下拉选项为现有应用选择映射,但不建议这样做。 对于新应用,此选项默认不可用。 要打开或关闭此已弃用的功能,请转到设置 > 即将推出的功能 > 已停用,然后选择允许为组件输入自动分配字段。
打开此设置时,请确保在 Power Apps Studio 中保存然后重新打开应用。 重新打开后,更新输入属性公式以触发公式验证,以使下拉选项开始出现在“高级属性”窗格中。