我有这个文件api.php
require_once 'db.php';
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
$query=mysql_query("SELECT * FROM $tableName") or die(mysql_error());
$arr[];
while($obj = mysql_fetch_object($query)) {
array_push($arr, $obj);
}
echo $json_response = json_encode($arr);
它正在获取我需要的所有数据。
然后我试图将这些数据放在这里的$ scope中...
// The controller
function InstantSearchController($scope, $http){
$http.get('api.php').success(function(data) {
$scope.items = data;
$scope.items = [
image : data['icon'],
english : data['english'],
british : data['british']
];
});
}
但是,如果我像这样对数据进行硬编码,这确实可行。
function InstantSearchController($scope){
$scope.items = [
{
english: 'English A',
british: 'British A',
image: 'images/advil.jpg'
},
{
english: 'English B',
british: 'British B',
image: 'images/advil.jpg'
}
]
}
这是我在控制台中看到的错误
未捕获到的SyntaxError:意外令牌:js / angular.js:44
未捕获的错误:[$ injector:modulerr] http://errors.angularjs.org/1.2.15/ $ injector / modulerr?p0 = instantSearch&p1 = E ... larjs.org%2F1.2.15%2F%24injector%2Fnomod%3Fp0%3DinstantSearch%0A%20%20%20%。 ..... 1)
这是小提琴尝试的回应#1
http://jsfiddle.net/XgsWU/
而这是响应#2
http://jsfiddle.net/JGjyS/
最佳答案
对于以后可能会阅读此书的任何人,我都发现我的问题出在我的控制器调用中,并且我对此进行了更改/更新,而且效果很好!
app.controller('InstantSearchController', ['$scope', '$http', function($scope, $http) {
$http.get('inc/api.php').success(function(itemData) {
$scope.items = itemData;
});
}]);