исходниках js? А то я щас проект рефакторю, и там вполне такое живет. Вроде и исправить хочется, да пока непонятно как
шаблон может содержать что угодно .. в том числе и js код .. правда по хорошему его тоже надо отделять
Что-то типа такого: window.addEventListener("load", function () { window.cookieconsent.initialise({ "theme": "edgeless", "position": "right-bottom", "content": { "message": "{{LANG cookie_message}}", "dismiss": "{{LANG cookie_dismiss}}", "link": "{{LANG cookie_link}}", "href": "{{LINK terms/privacy-policy}}" } }) });
Я знаю, что технически, шаблон может содержать всё, что угодно. Это просто текст. Но это как-то не очень - бекендом лезть во фронтенд. Но непонятно, как это вычищать. И вообще, так нормальные люди делают?
всё хорошо .. так как шаблон обрабатывается на сервере, то итоговый js скрипт содержит коррестные переменные
по другому тебе придется сделать лишний запрос на бекенд для получения данных ? а зачем если их можно инициализировать на бекенде ...
Пока тут только переменные. Но встречаются и отрывки типа <?php if (config->x == "xyz") { ?> script.someX(function (x) blablabla(x); }) <?php } else { ?> script.someY(function (y) { foobar(y); }) <?php } ?>
а вот это уже совсем не шалбонизатор ... а кто-то нафигачил просто пыховый код
И часто такое встречается в адекватном коде?
вот такого там быть точно не должно. Иначе зачем шаблонизатор ?
Не, я написал шаблонизация, а не шаблонизатор. Шаблонизировать и без шаблонизатора можно (хотя пхп и есть шаблонизатор)
эта штука должна быть реализована с помощью понструкции if else шаблонизатора, а не вот этой вермишели
Т.е. вы утверждаете, что если js код редактируется не через php, а через шаблонизатор, то это норм?
зайдем с другой стороны, как сделать чтобы скрипт содержал базовые значения, которые зависят от выполнения предыдущего кода на бекенде ?
Там не только базовые значения, там полноценное редактирование, типа если условие верно, то пусть жс выглядит вот так, иначе вот так. И так много много раз по ходу файла.
для скрипта это базовые значения
для js который существует только на фронте и не имеет доступа к беку это дефолтные базовые значения.. т.е. когда браузер его отрисовал на странице данные уже есть в скрипте
так и есть это и есть зависимость от предыдущего кода выполненого на бекенде... не понимаю чем смущает вариативность значений ?
Где значения то? Я же сказал, что речь не о парочке значений, а об изменении целых кусков кода, в том числе добавление новых инструкций или наоборот удаление
когда в twig работают условия if else который добавит или удалит кнопку или добавит или нет подключение js скрипта ...это тоже модификация целых кусков кода и что ?
Обсуждают сегодня