访问repeat.for

时间:2018-05-03 10:33:17

标签: typescript aurelia aurelia-binding

我在ref内有repeat.for个对象,看起来像这样

<tr repeat.for="machine of machines">
    <div with.bind="machine" ref="pb">...</div>
</tr>

Aurelia Inspector在机器对象下显示引用:

enter image description here

我尝试在attached()中访问它,如下所示:

attached() {
    console.log(this.machines[0].pb)
}

但当然这将返回错误,因为对象上不存在pb

通常当我尝试访问我的Typescript代码中的ref-bound元素时,我知道我需要先将它们初始化。但是我怎么能这样做呢,因为它在另一个对象里面?

1 个答案:

答案 0 :(得分:3)

找到答案。将typescript中的对象定义为

pbElements = [];

并在html中设置:

<tr repeat.for="machine of machines">
    <div ref="pbElements[$index]">...</div>
</tr>