在Angular中查看更新问题

View Update issue in Angular

本文关键字:更新 新问题 Angular      更新时间:2023-09-26

我是Angular的新手,正在尝试制作一个待办事项列表应用程序。这是一个简单的应用程序,使用本地存储在jStorage库的帮助下存储数据。

添加任务时,会更新值并显示视图,但只显示一次。第二次添加数据时,它会被添加到本地存储中,但不会出现在视图中。要获得视图,我需要重新加载页面。

Controllers.taskController = function($scope, $compile, tasksFactory){
 $scope.tasksObjects = tasksFactory.getData();
 $scope.priority = 5;
 $scope.taskId = 0;
 $scope.addTask = function(){
    var objectToSend = {};
    objectToSend.title = $scope.task.title;
    objectToSend.description = $scope.task.description;
    objectToSend.priority = $scope.priority;
    objectToSend.priorityClass = priorityClassArray[($scope.priority - 1)];
    objectToSend.status = $scope.task.status;
    objectToSend.taskId = $scope.taskId++;
    tasksFactory.postData(objectToSend);
    if($scope.tasksObjects === null){
        $scope.tasksObjects = [];
    }
 }
};

angularApp.factory('tasksFactory', function(){
  var tasksFactory = {};
  tasksFactory.postData = function(ObjectToAdd){
    var existingData = $.jStorage.get('tasks');
    console.log(existingData);
    if(existingData === null){
        $.jStorage.set('tasks','[]');
        existingData =[];
    }
    existingData.push(ObjectToAdd);
    $.jStorage.set('tasks',existingData);
  };
  tasksFactory.getData = function(){
    return $.jStorage.get('tasks');
  }
  return tasksFactory;
});

考虑在addTask((的末尾添加

$scope.tasksObjects = tasksFactory.getData();

我假设视图引用的是tasksObjects。