Ember - Какие типы данных я могу передать в качестве аргументов в компонент Glimmer? - PullRequest
0 голосов
/ 30 марта 2020

Из другого шаблона я могу передать аргументы компоненту, например:

<MyComponent @arg1="String" />

Я знаю, что мог бы также передать другой именованный объект из файла JS шаблона, но я не имею в виду чтобы спросить об этом.

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

Могу ли я, например, использовать {{each}} для l oop через аргумент массива? Я предполагаю, что альтернативой будет либо обработка через JS, либо работа с {{yeild}}. Спасибо.

1 Ответ

3 голосов
/ 31 марта 2020

Вы можете передать любой примитив, объект или функцию (я думаю, это все в JS), и есть веские причины для выполнения каждого из них.

Иногда для их создания требуются специальные помощники:

@obj={{hash name='Zoey')}}

@bll={{true}}

@arr={{array 1 2 3}}

Функция должна приходить откуда-то еще, хотя есть такие помощники, как ember-simple-set-helper , позволяющий встроить его в шаблон

@fnc={{set this.isAwesome true}}

...