本文主要是在基于ThinkPHP5+前端框架layui实现的EY内容管理系统中实现layui富文本编辑器layedit的插入图片接口。关于前端框架layui,不多介绍,可参考文章《你家隔壁程序猿推荐一款优秀的模块化UI框架-Layui》。
使用layui富文本编辑器,需要放置一个HTML标签(一般为textarea文本域)作为layedit编辑器的目标元素,然后调用layedit.build('id') 建立编辑器。下面,走一下这个流程:
首先,实现文章发布或编辑的form表单,初始化layui富文本编辑器,效果如下:
文章发布表单对应的HTML代码如下:
其中是layedit的目标元素,建立编辑器以及表单提交的js代码如下:
实现layedit插入图片接口需要在建立编辑器之前配置uploadImage,本例中配置代码如上图JS代码所示。
layedit不提供服务端的图片接受,需要我们在接口中实现,图片上传成功后返回指定格式的JSON信息,格式如下:
{
"code": 0, //0表示成功,其它失败
"msg": "", //提示信息 //一般上传失败后返回
"data": {
"src": "图片路径",
"title": "图片名称" //可选
}
}
本例中用thinkPHP5实现编辑器插入图片接口的代码如下:
我创建了一个资源上传的控制器,专门用来处理文件上传相关业务,其中有关thinkPHP5上传文件的代码请参考TP的官方文档,这里不做过多解释。
然后,发布一篇科技互联网新闻,演示一下效果。
在第一段后面添加一张图片,提交后效果如下:
相关文章:
1、基于ThinkPHP5+layui框架,实现图片上传以及图片预览
2、用前端框架layui写一段能监听所有form表单提交的js代码
3、基于PHP框架ThinkPHP5,演示UI框架Layui的表单验证及监听submit提交
4、前端|Layui框架实现多文件上传并携带额外参数提交到后台