0

在应用程序初始化时,所有控制器都由 Ember 初始化。在使用任何控制器后,它会保留其值,这在重用控制器时会成为问题。我想知道:

  1. 在应用程序初始化时初始化所有控制器的好处?
  2. 有什么办法可以解决我重用控制器的问题,以便重置所有变量?

PS:请不要误解“重用控制器”。我想要的只是使用相同的控制器,而不需要以前任何任务中输入的值。

4

1 回答 1

2

控制器旨在长期存在并保持应用程序状态,即使它们的视图可能会闪烁或消失。在典型的 Ember 应用程序中,控制器只创建一次并在应用程序的整个生命周期中存在,因此在应用程序初始化时将它们全部初始化的原因。

对于“重置”控制器的简单方法,您可以使用Ember.ObjectController,代理获取和未在控制器上定义的属性集,您设置为content属性的对象。要重置控制器,只需设置content一个新对象。

于 2012-09-27T03:00:38.820 回答