使用angular1.x的ui router,页面刷新闪动的问题?

发布于 2022-09-05 21:49:30 字数 197 浏览 42 评论 0

    <div header>头部</div>
    <div ui-view></div>
    <div footer>底部</div>

每次刷新页面,ui-view页面获取的很慢,导致页面会白屏或者底部闪动一下,有什么好的解决办法吗?谢谢了!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

征棹 2022-09-12 21:49:30

一般的做法是,先隐藏整个数据依赖的区域,然后用ng-if来判断,异步数据的data是否回调过来了。如果是的话,则显示并渲染。没有的话,可以先给个loading占位。

吻泪 2022-09-12 21:49:30
  • 这里可以给ui-view增加一些静态的样式,比如高度啦,边框啦之类的

  • 之后再通过ng-animate的语法给ui-view增加一些动画样式,比如

// sass

.ui-view-container {
    position: relative;
    height: 100%;
    width: 100%;
    &.full {
        height: 100vh;
        width: 100vw;
    }
}

[ui-view].ng-enter,
[ui-view].ng-leave {
    transition: all .5s ease-in-out;
}

[ui-view].ng-enter {
    opacity: 0;
    &.ng-enter-active {
        opacity: 1;
    }
}

[ui-view].ng-leave {
    opacity: 1;
    &.ng-leave-active {
        opacity: 0;
    }
}

前提是你得加载 ng-animate 模块,这样ng-leave和ng-enter这些css hook才会生效。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文