我有两个控制器并希望在它们之间“发送”对象。我有这样的事情:如何在角度DART控制器之间进行通信
@NgController(selector: '[users]', publishAs: 'ctrl')
class UsersController {
List<Users> users;
}
@NgController(selector: '[user_logs]', publishAs: 'ctrl')
class LogsController {
List<Log> logs;
void filterLogsFor(User user) { logs = ... }
}
class MyAppModule extends Module {
MyAppModule() {
type(LogsController);
type(UserController);
}
}
我的解决办法简单地增加LogsController到UserController中的依赖,并呼吁从模板类似ctrl.logsCtrl.filterLogsFor(用户)。但它不会因为某种原因而工作 - 我发现DI创建了另一个新的对象LogController,它与模板本身无关 - 我甚至尝试更改为“value(LogsController,new LogsController())”,但它相同 - 它创建新的LogsController,当新的MyAppModule调用,然后新的另一个模板我猜。我显然做错了 - 但文档没有帮助,而且angularjs似乎根本不相似。
更新: 想象两个表(controlers) - 用户和日志,每个用户行都有链接,以显示分配给他的日志。
创建独立的服务将工作我猜。但它似乎过于简单的事情imho。 – user2216697