我只是从MEANJS开始。我正在修改示例文章模块。
看一下findOne()的代码,似乎要查询数据库,然后将其返回并分配给$scope.article
。
// Find existing Article
$scope.findOne = function() {
$scope.article = Articles.get({
articleId: $stateParams.articleId
});
};
我希望它可以重定向或显示404(如果不返回任何内容)。可能是因为URL上有错字。我开始测试,以故意在URL上放置错误的ID来查看什么样的结果。
结果
当ID错误时,在控制台中,我会看到“找到了东西”,然后是“未定义的” THEN,然后是400“错误的请求”错误。
// Find existing Article
$scope.findOne = function() {
$scope.article = Articles.get({
articleId: $stateParams.articleId
});
if ($scope.article) {
console.log('found something');
console.log($scope.article._id);
}
else {
console.log('found NOTHING');
}
};
最重要的是,如何检查我是否真的得到东西?
由于该Articles.get()
函数是异步的,因此它应该返回一个$promise
对象,然后您可以检查该对象是否返回。这样的事情应该起作用:
var self = this;
Articles.get({
articleId: $stateParams.articleId
}).$promise.then(function(data){
if (data) {
console.log('found something');
console.log(data.article._id);
self.article = data.article;
}
else {
console.log('found NOTHING');
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句