在markdown中更新文本

时间:2017-03-02 11:57:49

标签: javascript node.js markdown simplemde

编写博客网站,使用SimpleMDE(Markdown编辑器)编写Markdown。

在app.js中,

//EDIT BLOG - FORM
app.get("/blog/:id/edit", function(req,res) {
    Blog.findById(req.params.id, function(err, foundBlog) {
        if(err) {
            res.redirect("/blog");
        } else {
            res.render("editBlog", {blog : foundBlog});
        }
    })
})

//UPDATE BLOG
app.put("/blog/:id", function(req,res) {
    req.body.blog.body = req.sanitize(req.body.blog.body);
    var id = req.params.id;
    Blog.findByIdAndUpdate(req.params.id, req.body.blog,{new: true}, function(err,updatedBlog) {
        if(err) {
            res.redirect("/blog");
        } else {
            res.render("showBlog", {blog : updatedBlog});
})

使用SimpleMDE时,它可以正常工作。 enter image description here 但是在单击“编辑”按钮时,更改将保存为: enter image description here

在editBlog.ejs中,

    <div class="field">
    <label>Text</label>
    <textarea id="MyID" type="text" name="blog[body]"><%= blog.body %> </textarea>
  </div>

在showBlog.ejs中,

<div id="main-blog-content"><%- blog.body %></div>

我在这里遗漏了什么吗?

1 个答案:

答案 0 :(得分:0)

SimpleMDE专为编写Markdown而设计。因此,编辑器将在提交表单或访问内容时提供Markdown。如果您希望将其转换为HTML,则需要使用解析库。如果要保持与预览窗口的一致性,SimpleMDE使用marked

以下是如何使用SimpleMDE的内置解析器将Markdown转换为HTML:

var simplemde = new SimpleMDE();
var html = simplemde.markdown("**Example** text");