假设我有一个(相当荒谬的)书籍模型,其属性看起来像:
page:{
paragraph:{
wordcount: {
the: 8,
at: 10
}
}
}
我可以绑定更改非常嵌套的值吗?
book.on("change:page:paragraph:wordcount:the", ...);
答案 0 :(得分:5)
Backbone仅触发顶级属性名称的change
个事件。根据{{3}}:
- “更改”(型号,选项) - 模型的属性发生变化时。
- “更改:[属性]”(型号,值,选项) - 更新特定属性时。
那里没有提到任何筑巢。实际上,如果你确实更改了属性的嵌套属性,我很确定它甚至不会触发事件(因为属性本身没有改变)。此外,如果您查看带注释的来源(尽管影响此行为的因素有点分散),您可以将其跟踪到Catalog of Events。
但是,它看起来像where change:attribute
events are triggered,有助于完成您所追求的目标。