1

私のIonicアプリではトグルを使用して機能のオン/オフを切り替えています。デフォルトのトグルは true で、トグルを変更すると false に切り替わります。

<ion-toggle ng-model="myToggle.checked" ng-change="myToggleChange()">
  Toggle
</ion-toggle> 

アプリを使用するとすべて正常に動作しますが、アプリを閉じると、アプリを再度ロードするときに閉じる前にスイッチが false になり、コントローラーの起動時にトグルがデフォルトで true になります。アプリをリロードした後のキャッシュの切り替えは、閉じる前に位置を持っていますか? コントローラ:

      $scope.myToggleChange = function() {

        if($scope.myToggle.checked == true){
            console.log('Is True', $scope.myToggle.checked);
        }
        if($scope.myToggle.checked == false){
            console.log('Is False', $scope.myToggle.checked);
        }
      };

      $scope.myToggle = { checked: true };
4

2 に答える 2

2

ドキュメントとマニュアルを 10 時間読んで解決しました )))

  $scope.myToggleItem = localStorage.getItem('check');

    if($scope.myToggleItem){    
      var item = localStorage.getItem('check');  
      $scope.myToggle = {checked: JSON.parse(item)};

    } else {    
      $scope.myToggle = { checked: true };
    }

  $scope.myToggleChange = function() {

    if($scope.myToggle.checked == true){
        console.log('Item', $scope.myToggle.checked);
        localStorage.setItem('check', $scope.myToggle.checked);
    }
    if($scope.myToggle.checked == false){
        console.log('Item', $scope.myToggle.checked);
        localStorage.setItem('check', $scope.myToggle.checked);
    }
  };
于 2016-07-13T07:52:06.110 に答える
0

localstorage を使用して、そのようなデータを保存できます。 https://github.com/gsklee/ngStorage

変更ハンドラーでは、次を使用して値を保存できます

 $localStorage.myToogleValue = $scope.myToggle

コントローラーは最初に確認できます

if ($localStorage.myToogleValue)
    $scope.myToggle = { checked: $localStorage.myToogleValue.checked };
else
    $scope.myToggle = { checked: true };
于 2016-07-12T19:39:56.647 に答える