Проверьте, какие атрибуты были назначены компоненту в Emberjs
Я написал компонент для отображения модального диалога выбора.
{{m-modal-select value=valList valuePool=possibleValueList}}
Это многофункциональный компонент, valuePool
список кандидатов, value
это выбранный список. Теперь я хочу поддерживать как multi-select, так и single-select внутри этого компонента, когда это одиночный режим, код должен выглядеть следующим образом:
{{m-modal-select singleValue=selectedOne valuePool=possibleValueList}}
Мне бы хотелось, чтобы сам компонент мог распознавать, находится ли он в одиночном или множественном режиме, наблюдая, какой атрибут (значение или однозначное значение) ему назначен.
Я не знаю, как добиться этого в компоненте JS.
Кроме того, мне также интересно, есть ли функция для получения имен всех назначенных атрибутов в компоненте. Для двух приведенных выше примеров это будет выглядеть так:
this.get('assignedAttrNames');
//the first one
// ['value', 'valuePool']
//the second one
// ['singleValue', 'valuePool']
1 ответ
this.get('attrs')
даст объект с атрибутами, которые вы передали компоненту.
Чтобы проверить, одиночный выбор или множественный выбор
//component.js
if(this.get('singleValue')){
//single select code
}else{
//multi select code
}
//component.hbs (only if you need so)
{{#if singleValue}}
single select code
{{else}}
multi select code
{{/if}}