我按照本教程使用 StrongLoop 创建登录:http: //docs.strongloop.com/display/DOC/AngularJS+JavaScript+SDK
不知何故,我在控制台浏览器上收到了这种错误消息:
TypeError: Object function Resource(value){
shallowClearAndCopy(value || {}, this);
} has no method 'login'
我按照本教程使用 StrongLoop 创建登录:http: //docs.strongloop.com/display/DOC/AngularJS+JavaScript+SDK
不知何故,我在控制台浏览器上收到了这种错误消息:
TypeError: Object function Resource(value){
shallowClearAndCopy(value || {}, this);
} has no method 'login'
是用户模型的登录方法吗?还是通过其他模型,例如客户/代理?所以,如果你想在客户/代理模型上使用登录方法,你必须使用模型扩展用户。http://docs.strongloop.com/display/LB/Model+definition+reference#Modeldefinitionreference-Extendingamodel
你能确认你已经生成了一个 lb-services.js 文件,其中包含一个带有登录方法的用户工厂吗?
您应该会看到如下内容:
"login": {
url: urlBase + "/users/login",
method: "POST",
interceptor: {
response: function(response) {
var accessToken = response.data;
LoopBackAuth.currentUserId = accessToken.userId;
LoopBackAuth.accessTokenId = accessToken.id;
LoopBackAuth.rememberMe = response.config.params.rememberMe !== false;
LoopBackAuth.save();
return response.resource;
}
}
},
你能证实吗?如果您看到此代码在 lb-services 文件中,那么您应该检查并确认您将其正确包含在您的应用程序中。
问题可能是,您没有用户模型。
另外,你能提供2段代码吗?调用 login() 的代码和描述它的 lb-services.js 中的代码