Node.js(sails.js)wysiwyg编辑器 - 图像

sca*_*ca_ 5 wysiwyg editor node.js sails.js

有没有办法在sails应用程序中使用任何WYSIWYG/html编辑器?我找不到任何手册来做到这一点.似乎Mercury在Node中得到了很好的支持,但我也找不到适应它的方法.:(请指导我

现在好了,它变得很容易连接TinyMCE(就像http://www.tinymce.com/wiki.php/Installation上描述的那样简单).所以现在又出现了另一个主要问题:是否有任何Node.js连接器可用于上传图像和内容的任何编辑器?

或者我如何允许用户上传图像并将其插入帖子正文?

谢谢

sca*_*ca_ 11

好极了!终于做到了!

最后我使用了CKEditor并且它工作了!看看这个:

  • http://ckeditor.com/download下载编辑器
  • 把它放到assets你的项目的文件夹中
  • 添加config.filebrowserUploadUrl = '/uploader';到您的ckeditor/config.js文件
  • 在控制器中添加上传操作:

upload_file:function(req,res){

var fs = require('fs');
console.log(req.files);

fs.readFile(req.files.upload.path, function (err, data) {
  var newPath = 'assets/files/' + req.files.upload.name;
    fs.writeFile(newPath, data, function (err) {
    if (err) res.view({err: err});
      html = "";
      html += "<script type='text/javascript'>";
      html += "    var funcNum = " + req.query.CKEditorFuncNum + ";";
      html += "    var url     = \"/files/" + req.files.upload.name + "\";";
      html += "    var message = \"Uploaded file successfully\";";
      html += "";
      html += "    window.parent.CKEDITOR.tools.callFunction(funcNum, url, message);";
      html += "</script>";

      res.send(html);
  });

});
Run Code Online (Sandbox Code Playgroud)

}

  • 为此操作添加路线:
'/uploader' : {
    controller : 'post',
    action : 'upload_file'
  }
Run Code Online (Sandbox Code Playgroud)
  • assets/files为我上传一个文件夹(对我而言)
  • 最后,改变将ckeditor放入的表单:
block body
  script(type="text/javascript", src="/ckeditor/ckeditor.js")
  form(action='/posts/create', method="post", enctype="multipart/form-data")
    p Title
    input(type='text', name='title')
    p Body
    textarea(name='body', id='ck')
    script.
      CKEDITOR.replace( 'ck' );
    hr
    input(type='submit', value='?????????')
Run Code Online (Sandbox Code Playgroud)

(在这里玉)

就这样!享受WYSIWYG :)