[英]Meteor.JS - accounts-password : TypeError: Accounts.createUser is not a function
我正在创建一个应用程序并收到以下错误:
TypeError:Accounts.createUser不是函数
这是我的代码:
Template.register.events({
'submit form': function(event){
event.preventDefault();
var email = $('[name=email]').val();
var password = $('[name=password]').val();
var fname = $('[name=fname]').val();
var lname = $('[name=lname]').val();
Accounts.createUser({
email: email,
password: password,
profile: {
fname: fname,
lname: lname,
IsActive: 0
}
});
Router.go('home');
}
});
我正在使用:accounts-password软件包
我也在使用MONGO_URL(MONGO_URL = mongodb:// localhost:27017 / MYDB)
我试过了:流星重置
还通过以下方式重新创建了该应用程序:meteor create myapp
我可以通过已经创建的用户登录,以前它没有发出任何问题,而我创建了一个用户,但是现在却发出了这个问题,我该怎么办?
这是我做错的事情:
我正在使用一个名称为Accounts的集合,请参见下文:
旧代码
Accounts = new Meteor.Collection('accounts');
订阅:
Meteor.publish('Accounts', function(){
return Accounts.find();
});
并使用助手:
Template.account_screen_account_view.helpers({
FetchAccountViewData: function () {
var editid = Router.current().params._id;
return CustomerAccounts.findOne({_id:editid});
}
});
它与以下代码冲突:
Accounts.createUser({
email: email,
password: password,
profile: {
fname: fname,
lname: lname,
IsActive: 0
}
});
新代码(已更改)
CustomerAccounts = new Meteor.Collection('customeraccounts');
Meteor.publish('CustomerAccounts', function(){
return CustomerAccounts.find();
});
Template.account_screen_account_view.helpers({
FetchAccountViewData: function () {
var editid = Router.current().params._id;
return CustomerAccounts.findOne({_id:editid});
}
});
现在问题已解决。 有时我们忘了研究这些东西,我很乐于分享我的经验,就像您使用流星帐户一样,然后您需要更改自己的集合和功能的名称,因为它们可能会发生冲突并造成此类问题。
请验证您的字段名称是否相同。 如果这些相同,请尝试以下操作:
funname:function(event,target){
email=target.find(".your field class name or # field id").value;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.