java项目,前端集成markdown

浪尽此生 提交于 2020-02-22 18:01:31

参考文档地址:https://pandao.github.io/editor.md/ ,该网站的GitHub中也有参考资料。

此集成markdown的图片上传功能是伪上传。

第一步,引入markdown的css,js,font等文件

在这里插入图片描述

<link rel="stylesheet" href="/css/editormd.preview.min.css">
<link rel="stylesheet" href="/css/editormd.min.css">
<script type="text/javascript" src="/js/jquery-3.4.0.js"></script>
<script type="text/javascript" src="/js/editormd.min.js"></script>
<script type="text/javascript" src="/js/lib/marked.min.js"></script>
<script type="text/javascript" src="/js/lib/prettify.min.js"></script>

第二步,需要引入markdown的 HTML 处加入如下代码

注意div的 id=“qiestion-editor” 要和下面js中的 “qiestion-editor” 一致。(下面那段代码一样)

编辑时候的markdown界面

<div class="form-group" id="qiestion-editor">
	<textarea id="description" style="display: none;"></textarea>
</div>
<script type="text/javascript">
	$(function() {
		var editor = editormd("qiestion-editor", {
			width  : "100%",  
			height : 350,
			path : "/js/lib/",               //引入的lib文件路径
			delay: 0,                        //延时显示
			watch: false,                    //默认预览
			imageUpload    : true,           //打开图片上传功能
		    imageFormats   : ["jpg", "jpeg", "gif", "png", "bmp", "webp"],    //支持图片格式
		    imageUploadURL : "/file/upload",    //图片controller访问路径
		});
	});
</script>

查看时候的markdown界面 (反序列 html为markdown,否则查看的时候不是markdown格式)

<div id="question-view">
	<textarea style="display: none;" th:text="${question.description}"></textarea>
</div>
<script type="text/javascript">
	$(function() {
		var testView = editormd.markdownToHTML(
				"question-view", {});
	});
</script>

第三步,controller支持图片上传(伪功能)

注意不能写@RequestMapping,不支持get请求。(我在这儿犯错写成了get的注解)

@Controller
public class FileController {

	@RequestMapping("/file/upload")
	@ResponseBody
	public FileDTO upload() {
		FileDTO fileDTO = new FileDTO();
		fileDTO.setSuccess(1);
		fileDTO.setUrl("/images/cat.png");
		return fileDTO;
	}
}

如若有不正确的地方,还望指出,thank you!
__________________________________________________
可一想到终将是你的路人,
便觉得,沦为整个世界的路人。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!