Я хочу выполнить некоторый код прямо перед отображением макета, после того, как весь другой код будет выполнен. Где бы я положил этот код?
Я специально пытаюсь изменить файлы, на которые ссылаются помощники вида headLink, headScript и inlineScript, прежде чем они будут использованы макетом.
Вот шаги, которые я хочу предпринять:
- Зацикливать файлы в этих помощниках вида
- Составьте список локальных файлов
- Удалить локальные файлы из помощников вида
- Ссылка на локальный список файлов в качестве параметра для серверного скрипта, который объединяет их для одного HTTP-запроса
- Добавить эту новую ссылку на скрипт объединения в соответствующий помощник вида
Похоже, что плагин Front Controller не поможет мне в этом, и вот почему:
postDispatch()
выполняется после каждого выполняемого действия контроллера, и мне нужен полный список таблиц стилей / javascripts
dispatchLoopShutdown()
выполняется после цикла действия контроллера, но компоновка уже визуализирована на этом этапе
Как предложил Руфинус, я решил это, расширив помощников вида. Мой вопрос с этой точки зрения, а также решение здесь .