У меня есть папка с именем «клиенты» с 30 изображениями внутри, и я хочу вернуться с docpad 10 случайных изображений каждый раз при загрузке страницы. это возможно? Я искал возврат случайных файлов с помощью docpad и не нашел никакой документации об этом.Как я могу получить 10 случайных документов на docpad?
1
A
ответ
2
Скелет docpad "Kitchen Sink" имеет пример создания случайного числа при каждой загрузке страницы. См. Страницу Dynamic Content.
Ключевым моментом является установка динамического свойства в метаданных страницы в значение true (dynamic: true). Вам также необходимо убедиться, что у вас установлен плагин docpad «cleanurls» (docpad-plugin-cleanurls) - не сразу видно.
После этого это просто вопрос использования стандартного javascript Math.random. Я использую что-то вроде этого, чтобы получить случайный пост в моем .eco файле
<%=i = Math.floor((Math.random()*10))%>
<% document = @getCollection('posts').toJSON()[i] %>
Надежда, что помогает
Edit - Джейд Пример
- var i = Math.floor((Math.random()*10))
- var doc = getCollection('posts').toJSON()[i]
Тире перед операторами «Var» это важно. см. https://github.com/visionmedia/jade#a8
и как мне написать это в нефритовом? я попробовал, но не повезло ... может быть, такие вещи, как этот, хороши, чтобы добавить к основной конфигурации? –
добавлен пример нефрита. –
Есть ли шанс отметить это как ответ? Может помочь другим людям, смотрящим на это сообщение –