一直在阅读 Angular.js 的 Controller docs并偶然发现:
Sharing stateless or stateful code across Controllers — Use angular services instead.
但这让我不确定。如何在 Controller 之间共享无状态/有状态代码?或者这里的“代码”是什么意思?一个模型?此外,据我所知, Controller 之间不相互引用。任何人都可以帮我(其他人)清理一下吗?谢谢。
最佳答案
我认为他们所指的可能是“持久化”数据、在 Controller 之间或在路由更改之间共享数据的方法之一。一种方法是将它放在您的 rootScope 中,另一种方法是使用服务。如果您定义这样的服务:
.factory("MyDataObject", function() {
return {};
})
然后 MyDataObject 将是您调用它的任何地方的相同对象,允许您将内容保存到其中,以便在 Controller (或指令或其他服务等)之间共享数据、功能和状态。
你永远不知道 Angular 文档,但我猜这就是他们在谈论的内容:)
例如,请参阅此答案:Angularjs, passing scope between routes
关于angularjs - Angular 文档 : how can one share stateless/stateful code between controllers?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20144809/