当我通过插值调用模板中的组件方法时出现问题:{{get_method()}}
。该方法运行,但在无限循环中,我不知道为什么。请帮忙吗?
方法的代码是这样的:
get_name() {
console.log("bonjour");
}
我在我的模板中这样称呼它:
{{get_name()}}
这就是结果:
答案 0 :(得分:15)
您不应该在模板中使用方法,因为每次Angular运行更改检测时,都会调用该方法,这种方法可能经常发生。所以实际上这不是一个无限循环,只是在每次变化检测时调用该方法。
为避免这种情况,您需要更改代码以处理组件中方法的逻辑,并在模板中使用变量。
答案 1 :(得分:2)
我终于找到了解决方案,将检测策略更改为OnPush,以获取更多信息,访问此链接Change Detection Strategy: OnPush
答案 2 :(得分:0)
在您的组件中
getName:string;
ngOnInit() {
this.get_name();
}
get_name() {
console.log("bonjour");
this.getName = "bonjour";
}
并在您的视图文件中
{{getName}}