我现在正在构建一个简单的应用程序,其中包括编辑博客等内容。我有一些选择,例如 tinymc,一个很好的 html 编辑器,我打算使用它。但后来我发现了一些关于降价的东西,它很容易使用,现在也很流行。在 Markdown 支持的编辑器中,EpicEditor 是一个不错的选择。由于某些原因,WYSIWYGs 很糟糕而且很复杂。所以我决定使用降价编辑器。
然后在node.js服务器端,我有两种存储内容的选择,要么是markdown,要么是html,就像在cod中一样,它首先将markdown解析为html,然后将其保存到数据库中。
app.post('/post', function(req, res){
var currentUser = req.session.user,
html = markdown.makeHtml(req.body.post),
post = new Post(currentUser.name, req.body.title, html);
post.save(function(err){
if(err){
req.flash('error', err);
return res.redirect('/');
}
req.flash('success', 'scc!');
res.redirect('/');
});
});
将 html 保存到数据库的好处是,应用在加载内容时不需要从 markdown 解析为 html。而将markdown保存到数据库的好处是,当用户想再次编辑内容时,客户端更容易编辑markdown内容。