2017-02-14 37 views
0

我的查詢搜索餐廳所有的餐具上的數據庫。當列出3個時,ANGULARJS結果消失

<?php 
include('base.php'); 
$data = array(); 
$result = mysql_query("SELECT nombre FROM platos WHERE tipo = 'principal'",$connect); 
if(mysql_num_rows($result) > 0){ 
    while($row = mysql_fetch_assoc($result)){ 
     $data[] = $row; 
    } 
} else { 
    echo "0 results"; 
}; 
echo json_encode($data); 
mysql_close($connect); 
?> 

所以後來我調用它的角碼:

$http({ 
     method: 'GET', 
     url: '../../php/getDishesPrincipal.php' 
    }).then(function successCallback(response) { 
     $scope.principals = response.data; 
    }, function errorCallback(response) { 
     $scope.principals = 'No Response'; 
    }); 

好,最後我將它打印在我的html代碼:

<div id="agregarpedido_table_item" ng-repeat="principal in principals"> 
    <p id="agregarpedido_table_item_p">{{principal.nombre}}</p> 
    <div id="agregarpedido_table_item_command"> 
    <p>{{principal.cant}}</p> 
    <div class="selectors"> 
     <input type="button" value="+" ng-click="principal.cant = principal.cant + 1"> 
     <input type="button" value="-" ng-click="principal.cant = principal.cant - 1"> 
    </div> 
    </div> 

的問題是,當在我的數據庫中有超過2個匹配tipo:principal的結果時,html消失並且它沒有顯示任何事情G。最糟糕的是,控制檯不會將任何錯誤視爲正常。有任何想法嗎?

回答

1

由於您的SQL查詢只返回一個名稱數組,因此angular可能會在ng-repeat內引發一個無複製錯誤。

嘗試格式化您的NG-重複這樣的:ng-repeat="principal in principals track by $index"

你可能有2個或更多的非唯一的名稱爲您的校長,所以角拋出一個沒有欺騙錯誤。作爲參考,使用$ index方法的軌道可以幫助提高循環中的渲染/綁定性能。

這裏有一個jsbin https://jsbin.com/noxawusoqe/2/edit?html,js,console,output

希望的作品

0

我從來沒有找到答案,但錯誤獨自消失,當我重新啓動電腦。