2014-09-24 59 views
5

我想在我的项目中使用CKEditor或TinyMCE编辑器。 所以我把TinyMCE的文件夹中的流星公用文件夹,也把如何在Meteor JS中集成TinyMCE和CKEditor?

<head> 
<script type="text/javascript" src="<your installation path>/tinymce/tinymce.min.js"></script> 
<script type="text/javascript"> 
    tinymce.init({ 
     selector: "textarea" 
    }); 
</script> 

模板头标记。 但是接收到以下错误。 资源解释为脚本,但使用MIME类型text/html转移:"http://localhost:3000/%3Cyour%20installation%20path%3E/tinymce/tinymce.min.js". (index):97 未捕获的SyntaxError:意外的标记< tinymce.min.js:1 未捕获的ReferenceError:TinyMCE的是没有定义

我该如何解决这个问题? CKEditor也一样。 有没有其他丰富的编辑器,我可以在Meteor JS中使用?

+0

下面是如何集成Aloha编辑器在流星,也许它可以帮助:http://stackoverflow.com/questions/13961737/using-meteor-with-requirejs/26315457#26315457 – steph643 2014-10-11 14:10:13

回答

7

首先,您需要将公共文件夹中的CKEDITOR构建下载的所有内容。 CKEDITOR带有各种各样的东西,并引用基于相关目录的所有东西。

公共文件夹应该有一个命名的CKEditor它目录应包含包含下列文件和文件夹:

adapters 
lang 
plugins 
skins 
ckeditor.js 
config.js 
contents.css 
styles.js 

在您的主要布局文件引用CKEDITOR像这样:

<head> 
    <script type="text/javascript" src="/ckeditor/ckeditor.js"></script> 
    <script type="text/javascript" src="/ckeditor/adapters/jquery.js"></script> 
</head> 

在模板:

<template name="yourTemplate"> 
    <textarea id="content" name="content"></textarea> 
</template> 

最后,在你的temp的渲染函数晚:

Template.yourTemplate.rendered = function() { 
    $('#content').ckeditor(); 
}; 

通常情况下,你会说this.$('#content').ckeditor()但是,这并不工作,因为CKEDITOR是在公共文件夹。因此,您需要全局引用#content元素。

+0

布兰登非常感谢你!它完美地工作,再次感谢您的温柔回答。 – zevsuld 2014-09-29 00:30:35

1

而不是/public文件夹,把你的文件在/client/compatibility。然后在您想要使用它的模板中初始化它。

Template.editor.rendered = function() { 
    tinymce.init({ 
    selector: 'textarea' 
    }); 
}; 
+0

我试过了。当我把客户端/兼容性文件夹给它“客户​​端/兼容性/ tinymce/js/tinymce /插件/ example/dialog.html:1:不能在这里设置DOCTYPE(为你流星设置<!DOCTYPE html> 。 – zevsuld 2014-09-24 08:24:25

+0

我把它放在/公共文件夹中,然后如你所说在模板中初始化它。结果我tinymce未定义错误消失,现在只有未捕获SyntaxError:意外的令牌 zevsuld 2014-09-24 08:32:45

+0

DOCTYPE错误是由示例HTML您也放置在该文件夹中的文件。您应该只放分布.js文件。 – 2014-09-24 09:28:20

0

这是唯一的结果搜索所见即所得:

https://github.com/mcrider/meteor-bootstrap-wysiwyg

meteor add mcrider:bootstrap-wysiwyg 

看起来比CKEditor的或TinyMCE的简单一些,但也许这是确定为您的项目。

+0

它非常简单,但我需要编辑器作为tinyeditor功能。无论如何感谢您的建议。 – zevsuld 2014-09-24 08:54:37