github autumn-library/winow v0.2.0

latest releases: v0.8.4, v0.8.3, v0.8.2...
2 years ago

Изменения:

  • Упрощен запуск приложения.

Было:

#Использовать winow

// Создадим сервер, который будет центром мироздания.
Сервер = ФабрикаСерверов.СоздатьСервер();	

//Установим желаемый порт
Сервер.Настройки.Порт = 3331;

// В целях удобства разработки и отладки, отключим обработку запросов в ФЗ
Сервер.Настройки.ЗапросВФоновыхЗаданиях = Ложь;

// Для того, что бы сервер знал, как обрабатывать входящие запросы, в него нужно такой фунционал загрузить. Можно это сделать вот такой командой из каталога.
// Первый параметр - произвольное имя приложения, второй - каталог, в котором находятся классы, для управления логикой обработки запросов.
КонтекстПриложения = Сервер.МенеджерПриложений.ДобавитьПриложениеИзКаталога("ПриветМир", "./hwapp");

// Запуск сервера
Сервер.Старт();

Стало:

#Использовать autumn
#Использовать winow

Поделка = Новый Поделка;
Поделка.ЗапуститьПриложение();
  • Автоматическая загрузка желудей winow при подключении библиотеки

  • Объединены контексты winow и загружаемых контролов.

  • Шаблонные параметры в url точки маршрута

&ТочкаМаршрута("calc/plus/{Число1}/{Число2}")
Процедура ШаблонныеПараметрыСложение(Ответ, Число1, Число2) Экспорт
	Ответ.УстановитьТипКонтента("txt");
	Ответ.ТелоТекст = Число(Число1) + Число(Число2);
КонецПроцедуры
  • Изменена аннотация контролов

Было:

&Контроллер("/")
&Желудь
Процедура ПриСозданииОбъекта()

Стало:

&Желудь
&Прозвище("Контроллер")
&Маршрут("/")
Процедура ПриСозданииОбъекта()
  • Изменения в конфигурировании через json

  • автоматическая сериализация входящих Content-Type:application/json и Content-Type:application/x-www-form-urlencoded

  • Гибкий набор параметров в точках маршрута

  • Для удобства разработки веб приложения хочется разделить отображения, и добавить что-то общее для всех точек маршрута. Например общая html разметка, с заголовками, меню, подвалом и тд. Для этих целей есть возможность с помощью аннотации в конструкторе контрола указать общий шаблон.

&Желудь
&Прозвище("Контроллер")
&Маршрут("/demoviews")
&Отображение(Шаблон = "./hwapp/view/main.html", Метод = "ПолучитьМодельКонтрола")
Процедура ПриСозданииОбъекта()

КонецПроцедуры

Функция ПолучитьМодельКонтрола(Запрос) Экспорт
	Модель = Новый Структура("Заголовок, Дата", "Демонстрация работы отображений", Запрос.ДатаПолучения);

	Возврат Модель;
КонецФункции

Где &Отображение(Шаблон = "./hwapp/view/main.html", Метод = "ПолучитьМодельКонтрола") аннотация, указывает где расположен шаблон, и каким методом для него формируется модель с данными. Параметры этого метода так же могут быть выбраны, аналогично методам точек маршрута.

А вот так выглядит общий шаблон

!doctype html>
<html>
<head>
<title>{{Модель.Заголовок}}</title>
</head>
<body>
<div>Шапка страницы! Дата получения запроса: {{Модель.Дата}}</div>

@Контент

<div>Подвал страницы</div>
</body>
</html>

Где тег @Контент будет заменен результатом ответа точки маршрута.

  • Обновленная документация

  • Исправлены ошибки

  • Добавлены тесты основного функционала

Don't miss a new winow release

NewReleases is sending notifications on new releases.