Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何从底部开始滚动列表?_Angularjs_Listview_Scroll_Ionic Framework - Fatal编程技术网

Angularjs 如何从底部开始滚动列表?

Angularjs 如何从底部开始滚动列表?,angularjs,listview,scroll,ionic-framework,Angularjs,Listview,Scroll,Ionic Framework,我正在开发一个聊天应用程序,和大多数聊天应用程序一样,我的应用程序会显示一个消息列表 该列表是使用ng repeat生成的 我已经颠倒了消息,以便最新的消息在底部和底部 最老的在顶端 当前,当我的应用加载时,列表会向下滚动 $ionicScrollDelegate 我不喜欢这样做。这不是正确的方式,有时这会在打开应用程序时给我带来一些性能和加载问题 我想知道是否有另一种强制方式,可以从下到上开始/呈现列表,而不需要像我现在这样滚动到底 这是我目前使用的代码: 在我的HTML中: <s

我正在开发一个聊天应用程序,和大多数聊天应用程序一样,我的应用程序会显示一个消息列表

  • 该列表是使用
    ng repeat
    生成的
  • 我已经颠倒了消息,以便最新的消息在底部和底部 最老的在顶端
当前,当我的应用加载时,列表会向下滚动

$ionicScrollDelegate

我不喜欢这样做。这不是正确的方式,有时这会在打开应用程序时给我带来一些性能和加载问题

我想知道是否有另一种强制方式,可以从下到上开始/呈现列表,而不需要像我现在这样滚动到底

这是我目前使用的代码:
在我的HTML中:

<script type="text/ng-template" id="home.html">
    <ion-view ng-controller="HomeController" title="Home">
        <ion-content>
            <ion-list>
                <ion-item ng-repeat="message in messages track by $index">
                    {{message}}
                </ion-item>
            </ion-list>
        </ion-content>    
    </ion-view>
</script>
改为添加手表:

 $scope.$watch('messages', function(newValue, oldValue) {
   $ionicScrollDelegate.scrollBottom(true);
 }, true);

出现这种行为的原因是因为deviceReady不保证项目已呈现,这会导致列表根本无法滚动到任何位置。使用手表,当数组已加载且值已存在时,您将滚动。

参考此,它可能会帮助您,但不确定:OP要求您执行此操作“无需将其滚动到底”@lilbickite感谢您指出这一点。然而,答案是——至少据我所知——不。
 $scope.$watch('messages', function(newValue, oldValue) {
   $ionicScrollDelegate.scrollBottom(true);
 }, true);