0

您好,我对 aurelia js 很陌生,我遇到了一个绑定问题,我在页面上有两个 md-select 下拉菜单,当表单加载时,它会填充商店列表,如下所示

    <select md-select="label:Shop" value.two-way="addShopProfile.shopId" change.delegate="getItems(addShopProfile.shopId)">
   <option value="" disabled selected>Please select</option>
    <option repeat.for="shop of shops" value.bind="shop.id">${shop.name}</option>
    </select>

您可以看到我有一个change.delegate="getItems(addShopProfile.shopId)">原因,我希望下面的下拉菜单根据商店 ID 加载商店的商品

<select md-select="label: Items" if.bind="addShopProfile.shopId" value.two-way="addShopProfile.ItemsId">
   <option value="" disabled selected>Please select</option>
   <option repeat.for="item of Items" value.bind="item.id">${item.name}</option>
   </select>

现在,仅当我单击选择选项以更改商店时才加载项目(这是正确的)。如果商店在表单上加载,除非我点击它,否则该商店的商品不会显示。

我如何绑定项目选择选项以在商店已经加载时立即加载,而不必在第一次出现时单击商店选择选项来更改它

4

1 回答 1

0

我通常会做些什么来摆脱这种问题,我将我的函数(在你的情况下)称为Aurelia 提供给我们的函数getItems(addShopProfile.shopId)内部。attachedIE

attached()
{
getItem(id here)
}

因此,一旦加载了 dom,您的选择字段也会根据您提供的 id 加载数据。

于 2020-09-12T18:02:01.787 回答