Строковая интерполяция CoffeeScript с помощью For In Loop Добавляет запятые - PullRequest
0 голосов
/ 24 февраля 2012

Это кофейный текст ...

"""
#{@display_event_small(event) for event in data.top_events}
"""

выводит запятые между каждым из элементов в data.top_events. Мне нужно, чтобы они соединялись без запятых между ними. Конечно, я мог бы использовать более специализированный цикл, но я бы предположил, что у CoffeeScript есть более хороший способ изменить это поведение.

Дайте мне знать, если мне нужно уточнить. Спасибо.

1 Ответ

6 голосов
/ 24 февраля 2012

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

"""
#{(@display_event_small(event) for event in data.top_events).join('')}
"""

Для "#{}" нет специальных параметров форматирования, CoffeeScript просто выворачивает его наизнанкуэто к JavaScript +.Интерполированная строка, такая как "a #{b} c", становится

"a " + b + " c"

, когда компилируется в JavaScript, и JavaScript вставляет запятые, когда она структурирует ваш массив.

...