Перемешивание Underscorejs с EJS

Использование https://underscorejs.org/#shuffle

Можно ли использовать _.shuffle(list) с EJS?

Я получаю _ не определено.

<script type = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>

<% var breakfastFoods = []  %>
<% var breakfastFoodsInfo = []  %>
<% for (var food of allDBFoods) { %>
<% if (food.breakfast == true ){ %>
<% breakfastFoods.push(food.name) %>
<% breakfastFoodsInfo.push(food.info) %>
<% } %>
<% } %>


<% _.shuffle([breakfastFoods]); %>

Почему бы вам не установить underscore с npm и const _ = require('underscore'); в качестве примера. Затем вы сможете использовать его в своих файлах ejs. Думаю, это должно сработать

Richlewis 07.02.2019 17:05

@Richlewis Привет, Рич! Я установил npm и также потребовал подчеркивания. По какой-то причине все еще не могу использовать его в EJS.

AndrewLeonardi 07.02.2019 17:09

Посмотрите мой ответ, надеюсь, он поможет, и вы сможете использовать underscore, как я использую moment.

Richlewis 07.02.2019 17:17
Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
0
3
53
1

Ответы 1

Я бы предположил, что процесс будет похожим, но это то, что я делаю, чтобы использовать moment в моих шаблонах файлов EJS.

# routes.js

const moment = require('moment');


app.get('/fixtures', (req, res) => {
  const file = await readFile('./views/partials/fixtures.ejs');
  const fixtureTemplate = ejs.compile(file, { client: true });
  const html = fixtureTemplate({ moment });
  res.send({ html });
});

В моем файле examples.ejs я могу использовать такой момент

<%=  moment.utc(fixture.kick_off).local().format('HH:mm') %>

Надеюсь, вы сможете следовать тому же процессу использования underscore.

Спасибо @Richlewis! Я попробую это и посмотрю, как это работает :)

AndrewLeonardi 07.02.2019 20:16

Другие вопросы по теме