【问题标题】:AngularJS: multiples views using same controller best practiceAngularJS:使用相同控制器最佳实践的多个视图
【发布时间】:2013-12-28 05:41:07
【问题描述】:

我制作了一个应用程序,其中包含 3 个稍微不同的视图,它们使用相同的逻辑,因此每个视图都使用相同的控制器,但具有不同的 json 数据。一切正常,但我想知道这样做是否是 AngularJS 的最佳实践? 当路由改变时,被替换的视图是使用相同的控制器实例,还是实例化一个新的控制器?

谢谢。

【问题讨论】:

  • 在我的小经验中,每次视图更改时,都会重新加载其控制器。我正在使用 ui-router,所以也许 AngularJs 的基本路由没有相同的行为。您可以将“console.log”放入控制器中以检测到这一点。
  • 我也想知道这里有一些有用的信息Angular Best Practices

标签: angularjs


【解决方案1】:

每次加载视图时都会创建一个新控制器——从这个意义上说,控制器是瞬态的。如果需要维护状态,则应使用服务或工厂。

我个人会在同一视图的不同变体之间共享控制器。一般来说,如果控制器表示与视图相关的相同逻辑(或抽象),我认为没有理由不重用它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多