Проблема вот в чем:
у меня есть базовый компонент модельного окна.
Я хочу дополнить этот компонент расширить этот компонент другими. но все их вызывать простым способом например, когда я пишу <modal name="add_new_object"></modal>
я хочу вызвать компонент addNewObjects который наследуется посредством mixins от Modal
и в этом компоненте прописать уникальные действия обработки, например, отправку post через axios при отправке формы.
т.е. схема примерно такая:
ModalComponens->is AddNewObject -> AddNewObjectsComponent
как это сделать? перебрал все что можно.
пока самый адекватный вариант это вызывать через тег <add-new-objects></add-new-objects>
что крайне не удобно для работы с беком.
не нмого не то.
попробую переформулировать:
Мне нужно заменить родительский элемент дочерним при вызове родительского (с параметром, каким конкретно дочерним элементом нужно заменить родительский)
vitaly_74, это собсно весь код компонента modal.
Если у вас пореган глобально add_new_object вы просто делаете <modal name="add_new_object"></modal> и получаете <add_new_object></add_new_object>
Или я не понял что вам нужно?
Если вы хотетите "на лету" подрубать разные миксины к текущему компоненту в зависимости от переданного параметра - это невозможно сделать нормальным способом(можно похакать по всякому, но не нужно). Благо это и не требуется - достаточно одного компонента обёртки, который всё разрулит, примерно так:
Естественное extends не обязательно статически прописывать, можно и на лету функционально всё делать, главное кэшировать не забывать.)
было бы здорово подгружать к php (конкретно у меня yii2) кастомные теги, которые в с свою очередь подгружают компоненты.
например того же самого модального окна:
vitaly_74, сорян, не могу тут помочь, хз как эти ваши виджеты работают.
Моу сказать только две вещи:
1. Это сделать возможно. Потому что не бывает ничего невозможного в подобных задачах.
2. Так делать - плохо. Потому что фронт должен быть отделён от бэка, вся разметка в vue на фронтовой части, с бэка только данные в json по rest(или grphqj, не суть).