Angularjs数据值有时无法加载

时间:2018-12-26 07:13:55

标签: angularjs promise

angularjs的初学者,我已经在项目中创建了job module。在此模块中,我进行了作业添加和编辑。

当我尝试edit时,一项作业会详细说明某些数据有时无法加载。流动的图像是添加和编辑页面。

添加职位: enter image description here

编辑作业: enter image description here

此处未加载模块项,正在使用以下代码:

edit.html:

<div class="col-sm-6">
    <label>Module Item<code>*</code></label>

    <select class="form-control" name="moduleitem" ng-model="formData.moduleitem_id" ng-options="moduleitem_id1.id as moduleitem_id1.itemname for moduleitem_id1 in formData.moduleItem" ng-required="true">
    <option value="">Select Module Item</option></select> 
</div>

editjob.js

'use strict';
app.controller('EditJobsController', ['$scope', '$http', '$state', 'authServices', '$sessionStorage', 'webServices', 'utility', '$rootScope', '$stateParams', '$timeout', 'toaster', '$filter', function($scope, $http, $state, authServices, $sessionStorage, webServices, utility, $rootScope, $stateParams, $timeout, toaster, $filter) 
{

    $scope.formData = {};
    $scope.Id = $stateParams.id;
    $rootScope.loading = true;
    $scope.IMGURL = app.imageurl;
    $scope.validextensions = app.imgextensions;

    $scope.getData = function() {
        webServices.getSync('jobs/' + $scope.Id).then(function(getData) {
            if (getData.status == 200) {
                $scope.formData = getData.data;
console.log($scope.formData);
                $scope.formData.deletedimages = '';
                $scope.display = 0;                
                $rootScope.loading = false;
            } else {
                $rootScope.$emit("showerror", getData);
            }

        });
    }

    $scope.getModuleItem = function() {
        $rootScope.loading = true;
        $scope.loadingMsg = 'Loading';
        webServices.getSync('moduleitem').then(function(getData) {
            $rootScope.loading = false;
            if (getData.status == 200) {
                $scope.formData.moduleItem = getData.data;
            } else {
                $rootScope.$emit("showerror", getData);
            }
        });
    };

}]);

在控制台日志中,我知道了

enter image description here

  

只有某些时间数据无法加载。

我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

在使用html元素进行数据绑定或数据绑定时,请使用以下代码检查变量是否存在: ng-if =“ yourVariable”