gpt4 book ai didi

javascript - AngularJS - 发送和接收数据但不更新 View

转载 作者:行者123 更新时间:2023-11-30 06:33:47 26 4
gpt4 key购买 nike

我正在开发一个单页应用程序,我想调用服务器以查询特定价格的商品(例如 www.myapp.com/products?price=1200)。我能够执行请求并从端点获取 JSON,但 View 不会更新和显示数据。为什么我的观点没有更新的任何想法?

我的第一个想法是问题出在$routeProvider 上,但我不知道我需要如何更改它。

谢谢!

我的 Angular 模块

angular.module('myApp', [])
.config(['$routeProvider', function($routeProvider) {

$routeProvider.
when('/products',
{ templateUrl: 'partials/productSearchTemplate.html',
controller: ProductControl
});
}]);

我的 Controller

function ProductControl($scope, $http) {
$scope.sendRequest = function () {
$http({
url: '/products',
method: "GET",
query: {price: $scope.price}
}).success(function(data) {
$scope.products = data;
});
}
}

我的看法

<div class="products">
<div ng-repeat="product in products" class='product-panel'>
<div class='front'>
<span class='product-title'>{{product.title}}</span><br/>
<span class='product-manufacturer'>
{{product.manufacturer}}
</span>
</div>
<div class='back'>
<span class='product-price'>
{{product.price}}
</span><br/>
<a href="{{product.url}}">Details</a>
</div>
</div>
</div>

最佳答案

我怀疑您的“产品”端点不返回数组,而是返回对象。您期望来自服务器的以下 json:

[
{"title":"title","price":1,"manufacturer":"Someone"}
]

但很可能服务器返回对象而不是数组:

 {
"products":[{"title":"title","price":1,"manufacturer":"Someone"}],
"totalCount": 1
}

因此只需通过 Firebug 或 Chrome Dev Tools 检查从服务器返回的内容,并在 Controller 中执行必要的转换。

关于javascript - AngularJS - 发送和接收数据但不更新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15980030/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com