[英]Meteor.call method not found
我正在完成“发现流星”中的“显微镜”项目,但是遇到了问题。 我收到以下代码的“找不到方法”错误:
HTML模板-显微镜/客户端/模板/帖子/post_submit.html
<template name="postSubmit">
<form class="main form">
<div class="form-group">
<label class="control-label" for="url">URL</label>
<div class="controls">
<input name="url" id="url" type="text" value="" placeholder="Your URL" class="form-control"/>
</div>
</div>
<div class="form-group">
<label class="control-label" for="title">Title</label>
<div class="controls">
<input name="title" id="title" type="text" value="" placeholder="Name your post" class="form-control"/>
</div>
</div>
<input type="submit" value="Submit" class="btn btn-primary"/>
</form>
JS-显微镜/客户端/模板/帖子/post_submit.js
Template.postSubmit.events({
'submit form': function(e) {
e.preventDefault();
var post = {
url: $(e.target).find('[name=url]').val(),
title: $(e.target).find('[name=title]').val()
};
Meteor.call('postInsert', post, function(error, result) {
// display the error to the user and abort
if (error)
return alert(error.reason);
Router.go('postPage', {_id: result._id});
});
}
});
我不确定如何调试它,因为控制台中没有错误。 请谁能建议我要去哪里错了?
您很有可能需要将方法postInsert
添加到服务器端。 如果您正在“发现流星”中关注,他们将在下一节中进行操作-https: //book.discovermeteor.com/chapter/creating-posts
例如,您将方法放在这样的名为lib/collections/posts.js
的文件中
Meteor.methods({
postInsert: function(postAttributes) {
check(Meteor.userId(), String);
check(postAttributes, {
title: String,
url: String
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.