Я работаю с динамической формой в Laravel.
Я абстрагировал повторно используемые биты формы в @include
с некоторой JS-логикой для обработки возрастающей формы name=[]
идентификаторы на основе идентификатора, переданного, когда пользователь добавляет другой виджет.
Когда пользователь щелкает, чтобы добавить другой виджет в форму, я хотел бы просто вызвать включение с увеличенным счетчиком - это все отсортировано - однако вывод @include
не дружественный для JavaScript что-либо еще.
Осматривая, я нашел следующее:
https://laracasts.com/discuss/channels/general-discussion/blade-content-escaping
... и кажется, что ответом может быть расширение лезвия для создания пользовательской директивы:
https://laravel.com/docs/5.7/blade#extending-blade
У меня вопрос: смогу ли я обернуть @include
пользовательской директивой, скажем, @js(@include())
- или - это вообще не тот путь?
Это единственный экземпляр этой структуры во всем моем проекте, поэтому я не использую VUE.
Спасибо.
Edit:
Я пытался составить директиву
Blade::directive('js', function ($expression) {
return str_replace(array(' ', "\n", "\t", "\r"), '', $expression);
});
Проблема в том, что @include
не оценивает ... Кроличья нора