Forms AngularJS:刷新/重新加载数据&;更新DOM&;使形式原始

Forms AngularJS:刷新/重新加载数据&;更新DOM&;使形式原始,forms,angularjs,Forms,Angularjs,我撞到另一面墙了!我已经听了好几个小时了 我有一个购物车系统JSON文件中的产品列表 当客户将产品添加到购物车时,我希望刷新JSON提要,因为我已经设置了此选项,以根据客户在购物车中拥有的内容调整库存水平,这样他们就不会添加太多商店没有的产品 “添加到购物车”运行良好。但我不知道如何“推送”更新的提要来更新DOM元素 以下是我到目前为止的情况: $scope.reloadData = function(detailSection) { // Find the URL title of t

我撞到另一面墙了!我已经听了好几个小时了

我有一个购物车系统JSON文件中的产品列表

当客户将产品添加到购物车时,我希望刷新JSON提要,因为我已经设置了此选项,以根据客户在购物车中拥有的内容调整库存水平,这样他们就不会添加太多商店没有的产品

“添加到购物车”运行良好。但我不知道如何“推送”更新的提要来更新DOM元素

以下是我到目前为止的情况:

$scope.reloadData = function(detailSection) {
    // Find the URL title of the current click product
    var prod_detail_url = $scope.products[detailSection].url_title;
    var prod_category_id = $scope.products[detailSection].discount_category;
    var prod_sku = $scope.products[detailSection].title;

    // Set the defaults of the info to load in
    var detailurl = '/order/series_detail/' + prod_detail_url + '/' + prod_category_id + '/' + prod_sku;
    $scope.productDetail = [];

    // Process the details of the product
    $scope.reloadedDetails = function (data, status) {
        $scope.productDetail = data;
        $scope.productDetail.push(data);
        $('.detailloader').hide();
    }

    // Fetch the Details of the product
    $scope.reloadDetail = function () {
        $('.detailloader').show();
        $http.get(detailurl).success($scope.reloadedDetails);
    }

    // Instantiate the process
    $scope.reloadDetail();
};
$scope.reladedDetail正在启动,my.detailloader正在显示。据我从检查器中看到的,它正在获取URL$scope.reloadedDetails,但它不会推送新数据并隐藏.detailloader

我“相信”我还需要在提交后再次使表格“原始”?我还没有仔细调查过这件事。当前的测试允许我向购物车中添加一个东西,但如果我随后去添加并尝试添加另一个,表单不会提交

有什么建议吗?我可以告诉Angular在加载新数据后重新使表单保持原始状态吗?我不确定我有没有正确的方法

非常感谢您抽出时间提供帮助。

请尝试,
$scope.$apply()
在您的
重载详细信息
函数中

您将
重新加载的详细信息作为success函数传递,因此这将在另一个作用域中