Как правильно использовать многострочные литералы массивов или объектов в шаблонизаторе PUG?

В шаблонизаторе Pug есть возможность использовать многострочные литералы для массивов и объектов. Для создания таких литералов используются отступы (табуляция или пробелы).

Для создания многострочного литерала массива в Pug, вы можете указать каждый элемент массива на отдельной строке с использованием отступов:

- let fruits = [
    'apple',
    'banana',
    'orange'
  ]

Обратите внимание на тире в начале строки, оно указывает, что это JavaScript-код, а не текст Pug. Далее идут строки с отступами, которые образуют элементы массива.

Для создания многострочного литерала объекта в Pug можно использовать ту же концепцию. Указывайте имя свойства и его значение с отступом, а затем разделяйте пары ключ-значение запятыми:

- let person = {
    name: 'John Doe',
    age: 25,
    address: {
      street: '123 Main St',
      city: 'New York'
    }
  }

Обратите внимание на использование двоеточия между ключом и значением объекта. Внутри объекта также можно использовать отступы для создания вложенных объектов.

После создания многострочного литерала массива или объекта, его можно использовать в шаблоне Pug, обращаясь к переменной, в которую он был сохранен. Например, для вывода всех элементов массива на новых строках, можно использовать цикл each:

each fruit in fruits
  p #{fruit}

Для доступа к свойствам объекта можно использовать точечную нотацию:

p Name: #{person.name}
p Age: #{person.age}
p Address: #{person.address.street}, #{person.address.city}

Таким образом, вы можете использовать многострочные литералы массивов и объектов в шаблонизаторе Pug для создания структурированных данных и использовать их в различных контекстах вашего приложения.