如何从js输出中获取猫鼬的数据?

时间:2020-03-16 21:27:51

标签: javascript node.js mongodb mongoose ejs

猫鼬有问题... 我正在博客网站上工作,并尝试使用quilljs。问题是我有js文件的文件输出,这是我的羽毛笔的配置。

  var quill = new Quill('#editor', {
    modules: {
        toolbar: [
            [{ header: [1, 2, false] }],
      ['bold', 'italic', 'underline'],
      ['image', 'code-block']
        ]
    },
    theme: 'snow'
  });
  
  $('#saveArticle').click(function(){
    quill.root.innerHTML; //output
  });

以及如何将输出连接到我的猫鼬。在此之前,我使用了标签。

app.post("/compose", function(req, res){
    const post = new Post({
        content: req.body.output,
    });

    post.save(function(err){
        if (!err){
            res.redirect("/");
        }
      });
});

app.get("/blogs/:postName", function(req, res){
    const requestedPostId = req.params.postId;

    Post.findOne({_id: requestedPostId}, function(err, post){
    res.render("article", {
      content: post.content
    });
  });
});

1 个答案:

答案 0 :(得分:1)

要将数据输出发送到服务器,您需要向端点(/compose)发出HTTP(S)请求。 browser provides a way是这样做的,但是,看来您已经在使用jQuery,因此,您可以使用jQuery提供的jQuery.ajax() API。要使用ajax将数据发送到/compose端点,您的代码应如下所示:

$('#saveArticle').click(function(){
  const output = quill.root.innerHTML;
  $.ajax({
    type: 'POST',
    url: '/compose',
    data: output,
    success: function (response){
      console.log(response);
      // Whatever you want to do after successful post
      // For example, alerting that the article is saved
      alert('Article saved');
    },
    error: function(err){
      // Whatever you want to do after a failed post
      console.error(err);
    }
  });
});