问题描述
你好,我是aurelia js的新手,我遇到一个有约束力的问题, 我在页面上有两个md-select下拉菜单,当表单加载时,它会填充一个Shops列表,可以像下面这样正确地工作
<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>
现在,仅当我单击选择选项以更改商店时才加载项目(正确)。 如果商店在表格上加载,除非我单击它,否则该商店的项目不会显示。
如何绑定项目选择选项以使其在已经加载的商店中立即加载,而不必单击商店选择选项在首次出现时进行更改
解决方法
我通常要解决的问题是将我的函数(在您的情况下)称为Aurelia向我们提供的getItems(addShopProfile.shopId)
函数中的attached
。即
attached()
{
getItem(id here)
}
因此,一旦加载dom,您的选择字段也将根据您提供的ID加载数据。