у меня есть два контроллера и я хочу "отправить" между ними объект. У меня есть что-то вроде этого:
@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(user) из шаблона. Но по какой-то причине это не сработает - я обнаружил, что DI создает еще один новый объект LogController, который не связан с самим шаблоном - я даже пытался изменить на "значение (LogsController, новый LogsController())", но то же самое - он создает новый LogsController, когда вызывается новый MyAppModule, а затем, я думаю, новый еще один для шаблона. Я явно делаю что-то не так, но документация бесполезна, и angularjs кажется совсем не похожим.
ОБНОВЛЕНИЕ: представьте себе две таблицы (контроллеры) - пользователи и журналы, каждая строка пользователя имеет ссылку для отображения назначенных ему журналов.