适用于aurelia的范围

时间:2015-03-02 14:07:29

标签: aurelia

我刚刚尝试了aurelia的入门应用程序,并注意到在两个浏览器(chrome和ff)中打开时,它会保持导航同步。看起来路由器实例位于应用程序范围内。我没有在文档中找到有关范围的任何内容,所以问题是

aurelia中有哪些范围,如何在会话/页面/任何范围内放置/删除对象,查看特定范围内的对象是什么?

最好的问候,尤金。

1 个答案:

答案 0 :(得分:13)

  

我刚刚尝试了aurelia的入门应用并注意到了这一点   当在两个浏览器(chrome和ff)中打开时,它会使导航保持同步。

gulp任务包括一个导航同步插件,可让您在多个浏览器中保持应用程序打开,并根据您在其他浏览器中的行为刷新每个浏览器。

  

看起来路由器实例驻留在应用程序范围内。我没有   在文档中找到关于范围的任何内容,所以问题是什么   是aurelia的范围

这取决于对象。通常,您可以创建它们。 Aurelia的所有不同部分通常作为es6类处理。您可以使用static metadata方法来定义您的类应具有的范围。给它一个transient注释将告诉Aurelia每次注入依赖项时都要实例化新版本。否则,默认的singleton注释将指示Aurelia将对象实例化一次,将其保留在内存中,并根据请求注入相同的实例。

  

如何在会话/页面/任何范围内放置/删除对象,看看是什么   对象特别适用范围?

你没有那么多检查哪些物体还活着。你让Aurelia聪明地处理它。相反,你向Aurelia询问你感兴趣的事情。每个班级都可以通过相应的方法处理自己的激活和停用。

您可以在文档中详细了解这些主题:

http://aurelia.io/hub.html#/doc/article/aurelia/dependency-injection/latest/dependency-injection-basics