From 11d7979eb415b55d245447526f3afc81f2df12cf Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Mon, 11 Dec 2023 07:46:44 +0100 Subject: [PATCH] raw (#59) * raw * raw --- README.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/README.md b/README.md index 64e5110..9a6c8ba 100644 --- a/README.md +++ b/README.md @@ -629,6 +629,8 @@ app/ИнтерактивныйКонтролПриветствия.os app/view/view1.html ``` + + ```html @@ -673,6 +675,8 @@ app/view/view1.html ``` + + Если присмотреться, то шаблон это просто HTML разметка, которую смешали с 1сным кодом. Вот это коктейль получился! Основные принципы разметки: @@ -683,8 +687,12 @@ app/view/view1.html - Переменная ```{{ Модель.ЛюбоеЗначение }}``` - Функция ```{{ Макс(1,5,9,7) }}``` + + Операторы - обозначаются тегами. ```{% <КодНа1С> %}```. + + Это полноценный код на 1С. Можно объявлять переменные, взаимодействовать с ```Модель```, использовать управляющие блоки(Циклы, Условия) ![hw11](docs/hw11.png) @@ -693,6 +701,8 @@ app/view/view1.html Может быть так, что до или после рендера модели в шаблоне, нужно выполнить некие манипуляции с текстом шаблона. Для выполнения этой операции нужно зарегистрировать обработчики событий до рендера и после. Например: + + ```html
@ТекстЗаменыДоРендера@ @@ -701,6 +711,8 @@ app/view/view1.html
``` + + В этом шаблоне, мы хотим заменить вставки, неким текстом. Для этого добавим поделку два желудя. ```bsl @@ -731,8 +743,12 @@ app/view/view1.html ## Компоненты. + + Писать шаблоны круто, но что может быть еще круче? Писать меньше шаблонов, и переиспользовать уже имеющиеся. Представим, что вам в разных местах нужно отображать одну и туже информацию, (таблицы, элементы меню, и т.д.). для решения этой задачи, шаблон имеет секретную функцию ```{{ ВывестиПоШаблону(<Путь до шаблона>, <Модель для шаблона>) }}``` + + Давайте покажу, как это работает ``` @@ -780,6 +796,8 @@ app/ИнтерактивныйКонтролПриветствия.os app/view/view1.html ``` + + ```html @@ -828,10 +846,14 @@ app/view/view1.html ``` + + ``` app/view/printarray.html ``` + + ```html
{% Для Каждого СтрокаИзМассива из Модель Цикл %} @@ -842,6 +864,8 @@ app/view/printarray.html
``` + + ![hw12](docs/hw12.png) ## Общее отображение контрола. @@ -866,6 +890,8 @@ app/view/printarray.html А вот так выглядит общий шаблон + + ```html @@ -882,6 +908,8 @@ app/view/printarray.html ``` + + Где тег ```@Контент``` будет заменен результатом ответа точки маршрута. Однако бывают ситуации, когда у контроллера есть отображение, но какая точка маршрута должна возвращать ответ, без его применения. В такой ситуации, для метода точки маршрута нужно добавить аннотацию ```&НеВыводитОтображениеКонтроллера```. Например, вот так: @@ -922,6 +950,8 @@ app/view/printarray.html app/КонтролПриветствия.os ``` + + ```bsl &ФинальныйШтрих Процедура ПостИнициализация() Экспорт @@ -932,6 +962,8 @@ app/КонтролПриветствия.os КонецПроцедуры ``` + + # Перенаправление Иногда бывает так, что нужно с одной страницы, перенаправить позльзователя на другую.