如果我有一个子控件(在本例中为孙子控件),如下所示:
<my-control region-id.two-way="location.regionId"></my-control>
我什么时候可以使用regionId
?文档听起来像是绑定,然后发生附加,所以不应该在附加发生之前设置regionId
吗?
我在bind
,attached
和regionIdChanged
事件中添加了一些日志记录,并在控制台上看到了
bind
attached
regionIdChange to null from undefined (default value in a dropdown)
regionIdChange to 1 from null (1 is the actual value)
我期望regionId
在attached
发生之前是1。这是预期的行为吗?
答案 0 :(得分:3)
变量应在bind()
阶段填充。
如果您将日志记录添加到每个阶段:
export class Child {
@bindable()
public field: string;
constructor() {
console.info("constructor: ", this.field);
}
bind() {
console.info("bind: ", this.field);
}
attached() {
console.info("attached: ", this.field);
}
}
它将产生以下日志输出:
constructor: undefined
bind: test
attached: test
test
是我绑定到的值。