流星方法不起作用
Posted
技术标签:
【中文标题】流星方法不起作用【英文标题】:Meteor method doesn't work 【发布时间】:2015-04-06 03:21:23 【问题描述】:假设我有一个名为Tasks
的Collection
,其中几乎没有任务。我调用了一个方法来向用户返回一个任务数组,但由于某种原因它没有返回任何内容。
下面是一个代码示例:
if (Meteor.isClient)
// This code only runs on the client
Template.body.helpers(
tasks: function ()
// Show newest tasks first
Meteor.call("getTasks", function(error, result)
return result; // Doesn't do anything..
);
);
Meteor.methods(
getTasks: function()
return Tasks.find(, sort: createdAt: -1);
);
任何想法为什么当我调用该方法时它不返回任何内容?
【问题讨论】:
How to use Meteor methods inside of a template helper的可能重复 【参考方案1】:Tasks.find()
返回一个游标,通过DDP传递给客户端是没有意义的。
你的意思可能是返回Tasks.find().fetch()
,但这违背了 Meteor 非常好的数据同步机制的目的。
你读过Understanding Meteor's publish/subscribe吗?
【讨论】:
但是输入return Tasks.find(, sort: createdAt: -1);
而不是方法调用有效。
它在控制台中工作,因为默认添加了自动发布包,它在服务器上自动设置发布和客户端上的订阅。说真的,阅读那个“理解”的答案:)
谢谢!我也读了这个,它真的很好地解释了这个系统! (也是 Sacha Greif 写的):discovermeteor.com/blog/…以上是关于流星方法不起作用的主要内容,如果未能解决你的问题,请参考以下文章
[iOS] UICollectionView调用scrollToItem不起作用
Angular 2 将表单分配给变量不起作用#f="form" (submit)="onSubmit(f.value)"