Laravel 5 Markdown 编辑器使用教程
php
5月18号发布的这个扩展,好多朋友使用起来有一些问ti,好吧,都怪我安装使用说明写的不清楚└(^o^)┘... 今天给你们补一篇详细的安装说明文档html
项目地址:https://github.com/yccphp/laravel-5-markdown-editorjquery
求star
,求star
,求star
,求star
,求star
(此处省略一万字)laravel
图片上传git
markdown 语法解析为 htmlgithub
markdown 编辑器该有的功能都有( 还有谁!还有谁!)数据库
1.在 composer.json
的 require
里面加入如下内容json
"yuanchao/laravel-5-markdown-editor": "dev-master"
2.添加完成后,执行 composer updatemarkdown
composer update
3.执行完这行命令,基本上就安装完啦,接下来打开 config/app.php
往里面加点东西app
// 往里面加入 `'YuanChao\Editor\EndaEditorServiceProvider'` 'providers' => [ ........ 'YuanChao\Editor\EndaEditorServiceProvider' ........ ], // 往里面加入 `'EndaEditor' => 'YuanChao\Editor\Facade\EndaEditorFacade'` 'aliases' => [ .......... 'EndaEditor' => 'YuanChao\Editor\Facade\EndaEditorFacade' .......... ],
加入以上配置之后,执行 php artisan vendor:publish --force
php artisan vendor:publish
执行上面这行命令之后,若是出现如下结果,说明你已经安装成功了
Copied File [/vendor/edvinaskrucas/notification/src/config/notification.php] To [/config/notification.php] Copied Directory [/vendor/yuanchao/laravel-5-markdown-editor/src/config/views] To [/resources/views/vendor/editor] Copied Directory [/vendor/yuanchao/laravel-5-markdown-editor/src/config/editor] To [/public/plugin/editor] Copied File [/vendor/yuanchao/laravel-5-markdown-editor/src/config/editor.php] To [/config/editor.php] Publishing Complete!
安装完之后,说下如何使用
注意!你必须先引入 jquery 在引入头部文件以前
在你的视图文件里面,须要使用编辑器的地方,先引入头部文件
// 引入编辑器代码 @include('editor::head')
而后,好比个人 textarea 须要把他变成编辑器,这个时候,给你的 textarea
写上一个 id = myEditor
如:<textarea id='myEditor'></textarea>
同时,在你的 textarea 的父级标签,加上 class = editor
,若是你的 textarea 是被 div 包住的,那么你就这样写
// class = editor <div class="editor"> <textarea id='myEditor'></textarea> </div>
必定要给父级标签加上 class = editor,由于要计算编辑器的位置
看了上面的例子,你应该明白,使用编辑器的两步就是
引入头文件
给你须要变成编辑器的标签加上 id='myEditor' 同时父级标签加上 class = editor
咱们已经内置了图片上传功能,你所须要作的,就是在适合的地方,插入代码而已
打开 config/editor.php
配置文件,咱们能够看到里面有一项配置是 uploadUrl
这个 uploadUrl
,指得是上传图片请求的地址,咱们上传图片时,是经过 Ajax
post 请求 控制器,控制器把图片上传,返回图片地址
那么问ti来了,编辑器怎么知道它要去请求哪一个控制器呢?答 案就是,你配置的 uploadUrl
是哪一个,它就请求哪一个!
举个例子:
好比,个人 uploadUrl 配置成了 Home/upload ,那么当我上传图片的时候,它会 Ajax 请求 Home 控制器的 upload 方法对吧?这个时候 upload 方法里面,须要把图片上传,而后返回图片地址
可是!咱们的扩展里面已经集成了图片上传并返回编辑器所须要的数据了,因此在你的 upload 方法里面,直接调用扩展的方法就行啦!
首先,在类头部,添加引用
use EndaEditor;
public function upload(){ // path 为 public 下面目录,好比个人图片上传到 public/uploads 那么这个参数你传uploads 就好了 $data = EndaEditor::uploadImgFile('path'); return json_encode($data); }
这个 upload 是专门用于编辑器图片上传的哦~
好了,这个时候,你的图片上传已经 ok 了!
咱们使用编辑器,把内容插入数据库后,展现给用户看的时候,总不能就输出 markdown 的语法吧~那用户也看不懂呀
因此,你须要把 markdown 转成 html,这样游览器才会解析
那么问ti来了,如何转呢?咱们的扩展已经集成了这个功能。咱们来使用下
依旧是头部引入
首先,在类头部,添加引用
use EndaEditor;
而后,调用咱们的方法就行啦
// 直接把须要转换的 markdown 作为参数传递进去 $str = EndaEditor::MarkDecode("#我是markdown语法"); echo $str; // 结果为 <h1>我是markdown语法</h1>
是否是很方便呀~
项目地址:https://github.com/yccphp/laravel-5-markdown-editor
注:本文转自Laravel开发社区大神Enda博客的博客