【问题标题】:QuillJS with Meteor - How to insert content to db?带有 Meteor 的 QuillJS - 如何将内容插入数据库?
【发布时间】:2016-11-05 14:26:48
【问题描述】:

我正在通过做一些流星JS 来学习,并且遇到了QuillJS 作为文本编辑器。现在我很难理解函数和将书面内容插入我的博客集合的方式之间的联系。

这是我尝试访问羽毛笔编辑器内容的方式:

Template.blogform.events({
  'submit #blogForm': function(e) {
    e.preventDefault();
    var title = $('#blogTitle').val();
    var body = document.querySelector('input[name=blogBody]');
    about.value = JSON.stringify(quill.getContents());

    Meteor.call('submitPost', title, body);
  }
});

但是在 quill 变量周围有 onRendered 时,控制台会抛出一个错误:“quill Invalid Quill container #editor”。 这是我对 quilljs 的初始化,我将其作为节点包加载:

Template.blogform.onRendered(function () {
var quill = new Quill('#editor', {
    modules: {
      toolbar: true
    },
    theme: "snow"
  });
});

Q1:如何将我的羽毛笔编辑器的内容插入到集合中?

Q2: 将 blogform.events 与 quill = new Quill 放在同一个文件中是最佳做法,还是应该将其拆分为 editor.js 和 blogform.js ?

谢谢!

【问题讨论】:

标签: javascript mongodb meteor quill


【解决方案1】:

错误“quill Invalid Quill container #editor”表示当您调用“new Quill('#editor', {})”时,Quill 找不到具有#editor id 的元素。

在创建编辑器之前确保您传递给 Quill 的元素存在。

我建议单独问 Q2,并将其作为流星问题,因为它与 Quill 没有特别关系。

【讨论】:

  • 我认为我的问题是我无法访问在Template.onRendered 中定义的“quill”变量以在Template.events 中调用它。如果我将 quill 声明放在 Template.onRendered 中,一切都可以正常工作
  • 我无法帮助您解决 Meteor,但我可以建议更改问题,使其仅包含无需使用 Quill 即可重现您的问题的 Meteor 代码。尝试在 Template.onRendered 中定义一个简单的变量并在 Template.events 中调用它。您可能会遇到同样的问题,但现在熟悉 Meteor 的人将能够为您提供帮助。
猜你喜欢
  • 2014-12-30
  • 2011-01-13
  • 2016-07-09
  • 1970-01-01
  • 2013-12-28
  • 2012-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多