Javascript 检查数据库中是否存在$routeParams名称

Javascript 检查数据库中是否存在$routeParams名称,javascript,html,angularjs,mean-stack,Javascript,Html,Angularjs,Mean Stack,我正在一个平均堆栈上创建一个网站,我有一个模板,可以在Angular中使用通配符路由。当用户在“cityname”中键入plumber时,将检查cityname是否存在于具有循环的数据库中。如果存在,它将检索cityname附带的所有信息。但是现在,如果用户选择了数据库中不存在的城市,我只需要一个“未找到页面”页面 我怎样才能做到这一点 这是我在控制器中的循环: app.controller('DataCtrl2', function($scope,$http,getData,$location

我正在一个平均堆栈上创建一个网站,我有一个模板,可以在Angular中使用通配符路由。当用户在“cityname”中键入plumber时,将检查cityname是否存在于具有循环的数据库中。如果存在,它将检索cityname附带的所有信息。但是现在,如果用户选择了数据库中不存在的城市,我只需要一个“未找到页面”页面

我怎样才能做到这一点

这是我在控制器中的循环:

app.controller('DataCtrl2', function($scope,$http,getData,$location,$routeParams){

$scope.changePath = function(path) {
   $location.path('/'+ path +'-' + $scope.selectedItem.city);
};

getData.getCity().then(function(response){

$scope.items = response.data;

var keepGoing = true;
for(var i = 0; i < $scope.items.length; i++){
  var data = $scope.items[i];
  if(keepGoing) {
      if (angular.lowercase($routeParams.name) == angular.lowercase(data.city)) {
       keepGoing = false;
       $scope.selectedItem = data;
      }
     }
    }
  });
});

与其为显然不存在的数据创建404未找到页面,不如检查该值并添加类似弹出窗口的内容,以通知用户该请求不存在?只是一个ideaBut如果您想保留它,您可以只添加一个条件,比如“else{$location.path('/your404Page.html')}?else语句不起作用,因为它将返回420次“Page not found”(只要有记录)当然啊哈,因为你在循环中,你需要在进入循环之前检查参数是否存在。我正在考虑一个解决方案,等一下。我能看看你的对象城市(response.data)吗?我正在尝试一些东西,但不能保证任何东西。。
{ 
  "_id" : ObjectId("592409faf1f5831ca882ad39"), 
  "city" : "Aalsmeer", 
  "phoneLG" : "0101-010 001", 
  "phoneAV" : "0101-010 001", 
  "phoneCV" : "0101-010 001"
}
{ 
  "_id" : ObjectId("592409faf1f5831ca882ad3a"), 
  "city" : "Aalburg", 
  "phoneLG" : "0101-010 001", 
  "phoneAV" : "0101-010 001", 
  "phoneCV" : "0101-010 001"
}