gpt4 book ai didi

dart - 如何查看 AngularDart 集合的元素?

转载 作者:行者123 更新时间:2023-12-05 00:27:19 24 4
gpt4 key购买 nike

我有一个模型:

class WordList {
List<Word> words = [];
}

它是通过依赖注入(inject)到我的一个 View 中创建的。

@NgController(
selector: '[list-ctrl]',
publishAs: 'ctrl'
)
class ListCtrl {
WordList wordList;
Scope scope;

ListCtrl(this.router, this.wordList, this.scope) {
scope.$watchCollection("", onChange );
}

每当从该列表中修改项目时,我想运行一些逻辑。我该如何做到这一点?

我相信关键在 $watchCollection 中,但我不知道要传递什么作为 watch 表达式。 “ctrl.wordList.words”会告诉我何时添加/删除项目,但未更改。

最佳答案

$watchCollection正如您所指出的,只能观察 List 中的变化不适用于列表项目的更改。这样做的原因是观察每个对象都会有爆炸性的属性。

scope.$watch(() => wordList, onChange);

您可以实现 onChange方法,它会在每个新项目上创建更多 watch ,并在从集合中删除项目时取消注册 watch 。

关于dart - 如何查看 AngularDart 集合的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20955205/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com