CNode

nodejs添加markdown中间件代码格式问题

问答
Zzhang962976642发布于10 年前最后回复10 年前20 回复4800 浏览0 收藏

引入markdown中间件 ,代码块展示有问题

//post文章发表处理程序
exports.formPost = function(req,res,next){
	//markdown语法支持
	var markdown = require('markdown').markdown;
	//获取表单信息
	var title = req.body.title,
		name = req.body.name,
		time = new Date(),
		info = req.body.message,
		titleSrc = req.body.titleSrc;
	//验证字段title是否为空
	var info = markdown.toHTML(info);
	if(title == null || title == undefined){
		req.flash('error','标题不能为空');
		return res.redirect('/post');
	};
	//写入到mongodb
	var Article = require('../models/article');
	Article.create({
		title:title,
		name:name,
		time:time,
		info:info,
		titleSrc:titleSrc,
	},function(err,data){
		if(err){
			req.flash('error','文章发表失败,请稍后再试');
			return res.redirect('/post');
		};
		//写入成功
		req.flash('success','发表成功');
		res.redirect('/');
	});
};

在WEB版本的markdown中代码格式没有问题,在现在写的博客项目中格式出现问题 1.png ** END ,帮帮萌新 **

查看回复

回复 (20)

Z
zhang962976642#2·10 年前
引用 tomoya92我怀疑是md文件的格式问题

@liygheart 不知道欸

T
TakWolf#3·10 年前

代码块经过编译后应该生成 <code> 标签,检查一下

来自酷炫的 CNodeMD

Z
zhang962976642#4·10 年前

同样的代码在 2.png 发布格式就有问题,不知道什么原因

Z
zhang962976642#5·10 年前

这是数据库的json信息 45.png

Z
zhang962976642#6·10 年前

顶一下

T
TakWolf#7·10 年前

没理解问题,看数据库存储是没问题的,所以是显示有问题吗

来自酷炫的 CNodeMD

T
tomoya92#8·10 年前

我怀疑是md文件的格式问题

Z
zhang962976642#9·10 年前
引用 TakWolf代码块经过编译后应该生成 <code 标签,检查一下 来自酷炫的 CNodeMD

@TakWolf 不行有code标签 就是不自动换行我觉得少了pre标签

T
TakWolf#10·10 年前

markdown语法用的是哪个?代码块用的是一个点还是三个点,一个点是不换行的单行块,三个点是代码段

Z
zhang962976642#12·10 年前
T
TakWolf#13·10 年前

你看你的截图,最前面

`javascript

最后面也有个点 是不是用了类型注释

你把代码类型javascript去掉,只用三个点编译一下试试,类型注释这个语法可能不兼容

看看是不是这个原因

T
TakWolf#15·10 年前

确实,code标签外通常应该有一个 pre 标签,这里没有转换成功

Z
zhang962976642#16·10 年前
引用 TakWolf确实,code标签外通常应该有一个 pre 标签,这里没有转换成功

@TakWolf 请问下 还有别的markdown中间件可以使用吗

T
TakWolf#17·10 年前

包用的是这个吗:https://github.com/evilstreak/markdown-js

你试一下这个包:https://github.com/markdown-it/markdown-it cnode用的就是这个,貌似好像没出现问题 https://github.com/cnodejs/nodeclub/blob/master/package.json#L32

T
TakWolf#19·10 年前

untitled1.png

cnode生成的结果是这样的,你可以参考一下

参与回复
登录后即可参与回复。登录