在AngularJS中更新数据后,Api Web服务不会运行

时间:2016-06-22 13:59:08

标签: arrays angularjs web-services

我的控制器中有两个功能。 init()在初始化控制器时运行,add_rule()在按钮的单击事件中运行。在第一种情况下,函数返回一个用于填充数组的数据。使用数组的内容,绘制一个手风琴引导程序。这是我的功能:

function init() {
            allocationService.getrules().then(
                function (data) {
                    for (var i = 0; i < data.length; i++) {
                        var rule = {
                            RuleName: data[i].ruleName,
                            RuleId: data[i].ruleid,
                            IsActive: data[i].isActive
                        };
                        $scope.listRules.push(rule);
                    }

                    loadfarmbyrule();
                }, function (error) {
                    toastr.error("Ha ocurrido listando las reglas", "Error", vm.toastrOptions);
                }),
}

当我运行第二个功能时出现问题:

  function add_rule() {
            if (validateData() === false) {
                return;
            }          
            var flag = true;
            var today = $filter('date')(new Date(), 'yyyy-MM-dd HH:mm:ss');
            allocationService.saverule(vm.getrule, true, today, today).then(
                function (data) {
                    toastr.info("Regla agregada correctamente", "Exito", vm.toastrOptions);

                    $scope.listRules = [];
                    $scope.init = init();
                },
                function (error) {
                    flag = false;
                    console.log(error)
                    toastr.error("Ha ocurrido agregando la regla", "Error", vm.toastrOptions);
                }
            )
        }

当我的服务中发生了成功添加新规则时,我再次调用函数init()从数据库中加载数组新数据,但这不会发生,因为如果我把断点放在Web Api,没有上升,因此仍然显示数组中的初始数据,而不是再次使用服务,因此不刷新数据。

感谢您提供的帮助。

问候。

抱歉我的英语不好。

0 个答案:

没有答案