Laravel Backpack 同一个自定义 field 组件在单页内多次出现的处理

文章目录

    Bug 描述

    之前写了个自定义的 summernote 富文本框组件,可以将插入图片自动同步到七牛 CDN。

    但是,如果页面中使用了两个该组件,第二个文本框插入的图片都会插入到第一个中。。。

    问题产生的原因是,使用的是 class 选择器,都选择了 .summernote

    解决方法

    解决思路非常简单,为每个组件定义不同的 ID。

    令人浑身发痒的地方是,需要在 js 里嵌入 PHP 代码

    HTML 部分

    <textarea
        id="summernote_{{ $field['name'] }}"
      name="{{ $field['name'] }}"
      @include('crud::inc.field_attributes', ['default_class' =>  'form-control summernote'])
    ...
    

    HTML 中的 js 部分

    ` $("#summernote_{{ $field['name'] }}").summernote({ lang: 'zh-CN', height: 600, callbacks: { ...

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式