Здравствуйте. Я пишу приложение на AngularJS. Суть проблемы в следующем:
- У меня в приложении есть роуты.
- В каждом роуте мой кастомный конфиг.
- В конфиге есть важная переменная, обязательная для всех роутов.
- Некоторые роуты используют один и тот же шаблон и контроллер и переменная таких роутов может меняться в зависимости от условий которые я задам.
Прямо в конфиге роутов я задать это не могу, так как роуты конфигурируются еще до инициализации приложения и нужных мне сервисов.
Для этого я решил перехватывать событие изменения URL и проставлять переменную в зависимости от результата выполнения условия.
------
Если отойти от контекста Angular и локализовать проблему, то получится
следующее.
Сейчас в принципе все работает, но учитывая, что приложение очень крупное...
Я НЕ хочу писать так:(this['myAwesomeFunction']() - this['foo']) > 0 ? true : false
А хочу писать так:(myAwesomeFunction() - foo) > 0 ? true : false
Это сильно упростило бы разработку. Но ко мне в голову ничего не приходит лучше чем сложное преобразование переменной-выражения.
Может я что-то делаю не так? Наверняка есть более деликатные решения