Значение обновления в шаблоне сои объявлено с помощью let

У меня есть одно значение, которое привязано к флагу из файла конфигурации, который мне нужно показать в моем шаблоне сои. Это либо правда, либо ложь.

Если true, значение должно быть "x" (например, но это строка). Если false, значение должно быть "" (пусто)

Обратите внимание, что я не могу передать значение true или false из моей конфигурации. Я также не могу опустить значение на ложь, он должен предоставить пустую строку.

Я пробовал различные формы операторов if с использованием let, но, согласно моим интерпретациям документов, значение, объявленное с помощью let, не может быть изменено (что не имеет смысла)

Это в основном то, что мне нужно:

{if $inputValue.value == 'true'}
    {let $myVar: ($someValueThatExistsInMyTemplate) /}
{else}
    {let $myVar: '' /}
{/if}

Тогда я буду использовать $myVar в моем шаблоне. Однако всякий раз, когда я пытаюсь это сделать, я получаю эту ошибку:

Found references to data keys that are not declared in SoyDoc: [myVar]

А что я могу сделать!?

1 ответ

Получил работу с помощью троичного оператора:

{let $dataParent: ($item.preferences.accordionOnOff.value == 'true') ? ($item.name) : '' /}
Другие вопросы по тегам