Что написано в коде блока-шаблона?

В коде блока-шаблона на языке Pug, который является препроцессором HTML и предоставляет более удобный и компактный синтаксис для написания HTML-разметки, может быть написано множество различных элементов и инструкций.

В самом начале блока-шаблона может быть задано название файла, используя директиву extends или include для подключения других Pug-файлов. Например:

extends layout.pug

или

include header.pug

Затем, в блоке-шаблоне можно определить значения переменных, которые будут использоваться в разметке. Например:

- var name = "John"

Далее, в блоке-шаблоне содержится сама разметка HTML. Вся разметка в Pug пишется с отступами, и элементы HTML объединяются подобно вложенным спискам. Например:

html
  head
    title My Page
  body
    h1 Hello, #{name}!
    p This is my first Pug template.

Здесь, в блоке-шаблоне, мы можем использовать значение переменной name с помощью синтаксиса #{...}.

Особенностью Pug является использование сокращенных имен элементов, а также возможность добавления классов и атрибутов элементам без использования кавычек. Например:

html
  head
    title My Page
  body
    #main.container
      h1.title Hello, #{name}!
      p.description This is my first Pug template.

Кроме того, в блоке-шаблоне можно использовать условные операторы, циклы и другие конструкции для динамической генерации разметки. Например:

if name === "John"
  p Welcome, John!
else
  p Welcome, guest!

Также в блоке-шаблоне можно использовать миксины (mixins) для создания переиспользуемых блоков кода. Например:

mixin alert(type, message)
  .alert(class=type)
    span=message

+alert("success", "Operation completed successfully!")

Это всего лишь несколько примеров того, что может быть написано в коде блока-шаблона Pug. Однако, Pug предоставляет весьма гибкий и мощный синтаксис, который позволяет писать сложные и динамические шаблоны HTML, а также интегрироваться с другими технологиями, такими как CSS и JavaScript.