【发布时间】:2019-04-03 14:20:48
【问题描述】:
我正在使用 Laravel 中的动态表单。
我已经将可重用的表单位抽象为 @include,并使用一些 JS 逻辑来处理基于用户添加另一个小部件时传递的 id 递增的表单 name=[] id。
当用户点击向表单添加另一个小部件时,我想简单地调用包含递增计数器 - 全部排序 - 但是,@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。
谢谢。
编辑:
我尝试将指令放在一起
Blade::directive('js', function ($expression) {
return str_replace(array(' ', "\n", "\t", "\r"), '', $expression);
});
问题是@include 没有评估...兔子洞
【问题讨论】:
标签: javascript laravel laravel-blade