在 Iron:Router 中渲染的summernote

Posted

技术标签:

【中文标题】在 Iron:Router 中渲染的summernote【英文标题】:summernote rendered in Iron:Router 【发布时间】:2016-01-20 10:55:02 【问题描述】:

我使用 Iron:Router 和 Summernote,但它们似乎不能正常工作。 开始:

<div id="summernote"></div>

渲染
Template.newPost.rendered = function()
$('#summernote').summernote(height: 500);

定义了路由器

Router.route('/home', name: 'home');
Router.route('/new-post', name: 'newPost')

当我在 2 个模板之间切换时,会发生这种情况: http://i.stack.imgur.com/sLbCH.png

rendered-summernote 在 2 个模板之间不断重复 如何解决这个问题? 我的 Git 仓库GitHub

谢谢你:)

【问题讨论】:

【参考方案1】:
Template.newPost.rendered = function()
    $('#summernote').summernote(height: 500);



Template.newPost.events(
   'click #submit': function (event) 
     event.preventDefault();
     //var title = $('#titleInput').val()
     var content = $('#summernote').code()
     console.log(title);
     var post = 
     //title: title,
     content: content
     ;
     console.log(post);
     return false;
   
 );


Template.newPost.onDestroyed(function() 
    $('#summernote').destroy();
);

这是 new-post.js 文件,它可以工作。发生的事情是在 Summernote 初始化时,编辑器将 div 替换为 id summernote,所以它不再真正在这个模板中了。

阅读更多:https://atmospherejs.com/summernote/summernote

【讨论】:

如何使用onDestroyed? div 在 newPost 模板中 好吧,我想我知道是什么问题了,我会测试它并编辑我的答案。 编辑了我的答案,我找到了解决方案。还在 github 上创建了一个拉取请求,以便您可以应用此修复(如果它适合您) 非常感谢。希望我有足够的声望来支持你 :) 呃也许当我有足够的时候它会显示出来 不客气,谢谢你 :) 事实上,能够帮助 Meteor 并在其他人的项目中实施你的代码/修复是如此有趣和有益,以至于你并不真正关心积分(除了访问 SO 上的更多功能等)。无论如何,祝你的项目好运,如果你再次需要帮助,我在这里,或者你可以邀请我在 github 上合作。此外,浏览 Stack 问题并尝试帮助在学习过程中非常有用,它对我有很大帮助,你也应该尝试一下。干杯!

以上是关于在 Iron:Router 中渲染的summernote的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Iron Router Meteor 中检查当前路线

使用 Iron Router,“未定义路由器”

Iron Router 部署时显示启动页面,在本地工作正常

在页面转换完成时暂停 Meteor 的 Iron Router 中的路由

使用 Iron Router 在 Meteor 包中包含 HTML 模板

使用 Iron:router 将某些功能或事件的输出返回到 Meteor 中的某个新页面或模板