У меня есть динамический компонент, который загружает его в зависимости от типа каждого компонента, а реквизиты, которые я передал, используются внутри всех компонентов.
<div>
<component
:is = "getComponentName(attribute.type.toLowerCase())"
:cell-value = "listItem[attribute.name]"
:attribute = "attribute"
:is-read-only = "isReadOnly"
:row-key-id = "listItem.keyId"
/>
</div>
и компоненты загружаются из json, где каждому типу назначается компонент
{
"dropdown" : {
"shouldLoadComponent" : "BaseDropDown"
},
"assigned" :{
"shouldLoadComponent" : "BaseDropDown"
},
"textbox" : {
"shouldLoadComponent" : "BaseInput"
},
"label": {
"shouldLoadComponent" : "BaseLabel"
},
"switch": {
"shouldLoadComponent" : "BaseSwitch"
},
"time": {
"shouldLoadComponent" : "BaseLabel"
},
"status" : {
"shouldLoadComponent" : "BaseLabel"
},
"comment": {
"shouldLoadComponent" : "BaseLabel"
},
"action": {
"shouldLoadComponent" : "BaseLabel"
},
"personalimage":{
"shouldLoadComponent" : "BaseLabel"
}
}
Основная проблема в том, что есть ряд нестандартных пропсов и они используются не во всех компонентах.
Как лучше всего это сделать?
Теперь это проблема и для событий, так как каждый компонент события имеет свой уникальный
@KevinZhang этот собственный HTML-шаблон является компонентом и находится внутри цикла
Отвечает ли это на ваш вопрос? Динамическая передача реквизита в динамический компонент в VueJS
я видел этот вопрос, но не помог, потому что этот проход поддерживает не события



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


хорошо, просто используйте v-bind и v-on с объектом, с которым вы можете играть с объектами с помощью вычисляемого свойства
<component :is = "myComponent"
v-bind = "myComputedConditionalObject"
v-on = "myComputedConditionalEventObject"
/>
Если я не понимаю неправильно, можете ли вы сделать случай переключения в своем шаблоне html в соответствии с attribute.type, не использовать цикл for?