StringTemplate: пропуск конечной запятой при генерации массива Javascript

Я генерирую массив Javascript в StringTemplate 4, и у меня возникают проблемы с пропуском завершающей запятой после последнего элемента. Каждый элемент генерируется с использованием шаблона, а затем я хочу разделить их с помощью комы, чтобы создать массив в виде:

[ item1, item2, item3, item4 ]

В настоящее время мой лучший способ создания этого массива:

array(elems) ::= <<
  [ 
    $first(elems):elem_noComa()$
    $rest(elems):elem()$
  ]
>>

elem_noComa(el) ::= <<  { ...element generation... } >>

elem(el) ::= <<
  , $elem_noComa(el)$
>>

Есть ли способ сделать это проще / в более короткой форме?

1 ответ

Решение

Это работает для вас?

<elems:itemTemplate(); separator=",">

Он применяет itemTemplate() к каждому элементу массива elems и использует "," между ними. Terence

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