検索

ホームページ  >  に質問  >  本文

angular.js - 詳細を表示した後、戻りリスト ページが元の表示場所に留まりません - angularJS の問題の解決策は?神にアドバイスを求める

詳細を表示した後、戻りリスト ページが最初に表示された場所に留まりません - angularJS の問題の解決策は?神様にアドバイスを求めてください

黄舟黄舟2778日前617

全員に返信(1)返信します

  • ringa_lee

    ringa_lee2017-05-15 16:55:07

    リスト ページがページ分割されたページの場合は、ページのページ番号を URL に保存し、戻ったときに URL からページ番号を読み取り、そのページ番号のデータをロードする必要があります。
    リスト ページが非常に長いページで、元の位置に戻る必要がある場合は、サービスを抽象化してこのページ上のユーザーの位置を記録し、このサービスに入るたびにこれを読み取ってから < にする必要がある場合があります。 code>scrollTo その場所に移動します。 scrollTo那个位置。
    如果你的列表页面没有分页,也不是很长,那其实最好就返回页面顶部吧。

    针对页面很长的情况:

    js// PagePosition Service
    angular.module('app').factory('PagePosition', function() {
        var _top = 0;
        var _left = 0;
    
        return {
            getPosition: function() {
                return {
                    top: _top,
                    left: _left
                }
            },
            setPosition: function(top, left) {
                _top = top;
                _left = left;
            }
        }
    });
    

    把这个service注入到你所需要的view或者directive里面,在用户滚动事件中修改position,在返回到这个页面的时候读取position,并且调用scrollTo リスト ページにページネーションがなく、それほど長くない場合は、実際にはページの先頭に戻るのが最善です。

    ページが非常に長い場合:

    リーリー 🎜このサービスを必要なビューまたはディレクティブに挿入し、ユーザー スクロール イベントで位置を変更し、このページに戻ったときに位置を読み取り、scrollTo を呼び出して位置を決定します。 🎜 🎜ただし、ページが長すぎる場合は、リストをページ単位で表示することをお勧めします。戻るときに前の位置に戻ることができたとしても、ユーザー エクスペリエンスは非常に悪いからです。 🎜

    返事
    0
  • キャンセル返事