国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

angular.js - angualr-ui tabs 刷新後傳回初始值
僅有的幸福
僅有的幸福 2017-05-15 16:57:42
0
2
804

RT,使用angular-ui裡的tabs做選項卡切換的時候,不會記錄當(dāng)前選項卡選定狀態(tài),當(dāng)有人手賤按刷新的時候,就會回傳初始值。如何記錄目前選項卡選定狀態(tài)?

僅有的幸福
僅有的幸福

全部回覆(2)
世界只因有你

我也碰到過同樣的問題,最近在做公司行銷活動【發(fā)起】頁面時,發(fā)起分為4個步驟,我將每一步作為一個命名視圖,例如:<p ng-if="step == 3" ui-view="step-3"></p>, 通過ng-if來確定顯示第幾步, 然后在控制器中有一個方法來設(shè)置step,方法如下:

$scope.$on('changeStep', function(e, data) {
   $scope.step = data;
});

但是,當(dāng)編輯到其中某一步時,如果刷新瀏覽器就會回到第1步狀態(tài)。一開始我是用localStorage來儲存step狀態(tài)

$scope.step = $localStorage.step ? $localStorage.step : '1';
$scope.$on('changeStep', function(e, data) {
   $scope.step = data;
   $localStorage.step = data;
});
// 不在發(fā)起頁面時清除數(shù)據(jù)
$scope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams) {
  if (toState.name != 'app.xx.new' || toState.name != 'app.xx.edit' || toState.name != 'app.xx.view') {
    delete $localStorage.step;
  }
})

這樣就可以保存狀態(tài)了,但是有一個問題是,如果當(dāng)前編輯到第3步,我又重新開一個視窗從列表頁面進(jìn)入編輯,會直進(jìn)入第三步,跳過了前二步。
後來我也試過$cacheFactory, 一刷新狀態(tài)就丟失了,所以最后的解決辦法是使用sessionStorage。可以看看社群array_huang的文章localstorage 必知必會來了解二者的使用場景。

這種方式不一定最優(yōu),但可以作為替代方案一試。

漂亮男人

參考angular cache factory

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板