Angular4如何自定义首屏的加载动画详解

发布时间 - 2026-01-11 02:30:57    点击率:

前言

相信大家都知道,在默认情况下,Angular应用程序在首次加载根组件时,会在浏览器的显示一个loading... 我们可以轻松地将loading修改成我们自己定义的动画。下面话不多说,来一起看看详细的介绍:

这是我们要实现首次加载的效果:

根组件标签中的内容

请注意:在你的入口文件index.html中,默认的loading...只是插入到根组件标签之间:

<!doctype html>
<html>
<head>
 <meta charset="utf-8">
 <title>Fancy Loading Screen</title>
 <base href="/" rel="external nofollow" >
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <link rel="icon" type="image/x-icon" href="favicon.ico" rel="external nofollow" >
</head>
<body>

 <app-root>Loading...</app-root>

</body>
</html>

如果您在加载完根组件检查应用程序,则无法找到loading... 的文字,因为它在应用加载完成后被我们自己定义的组件替换掉。

这意味着我们可以在这些标签之间放置任何内容,包括样式定义,一旦Angular加载完根组件,就可以完全清除它们。

<app-root>
 <style>
 app-root {
  color: purple;
 }
 </style>
 I'm a purple loading message!
</app-root>

我们不必担心这些样式会影响我们的应用程序加载后的内容,因为一切都被完全替换掉。

现在你可以在那里随意的做任何事情。使用css或者svg实现自定义加载动画。

在我们的示例中,我们给页面一个粉红色的背景,我们使用Flexbox 将loading设置居中,给它设置一个更漂亮的字体,我们甚至在省略号上添加一个自定义动画:

<app-root>
 <style>
 app-root {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 100vh;

 color: pink;
 text-transform: uppercase;
 font-family: -apple-system,
  BlinkMacSystemFont,
  "Segoe UI",
  Roboto,
  Oxygen-Sans,
  Ubuntu,
  Cantarell,
  Helvetica,
  sans-serif;
 font-size: 2.5em;
 text-shadow: 2px 2px 10px rgba(0,0,0,0.2);
 }
 body {
 background: salmon;
 margin: 0;
 padding: 0;
 }

 @keyframes dots {
 50% {
  transform: translateY(-.4rem);
 }
 100% {
  transform: translateY(0);
 }
 }

 .d {
 animation: dots 1.5s ease-out infinite;
 }
 .d-2 {
 animation-delay: .5s;
 }
 .d-3 {
 animation-delay: 1s;
 }
 </style>

 Loading<span class="d">.</span><span class="d d-2">.</span><span class="d d-3">.</span>
</app-root>

这样我们就实现了上图的加载效果了,点击这里查看原文

分享几个loading效果的在线素材网:

  • loading.io
  • css-loaders
  • cssload

好了,去创建属于你自己的loading吧!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# angular  # 加载动画  # js  # 页面加载动画  # Angular4.0动画操作实例详解  # Angular2搜索和重置按钮过场动画  # 基于Angular.js实现的触摸滑动动画实例代码  # 给angular加上动画效遇到的问题总结  # 利用CSS3在Angular中实现动画  # AngularJS中实现显示或隐藏动画效果的方式总结  # 使用ngView配合AngularJS应用实现动画效果的方法  # 在AngularJS应用中实现一些动画效果的代码  # 详解Angular路由动画及高阶动画函数  # 加载  # 首次  # 应用程序  # 我们可以  # 自定义  # 自己的  # 这是  # 几个  # 好了  # 你可以  # 大家都  # 在那里  # 一切都  # 会在  # 点击这里  # 您在  # 请注意  # 这篇文章  # 在这些  # 它在 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何为不同团队 ID 动态生成多个独立按钮  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  如何用PHP快速搭建CMS系统?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  北京的网站制作公司有哪些,哪个视频网站最好?  Java遍历集合的三种方式  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  如何快速辨别茅台真假?关键步骤解析  php 三元运算符实例详细介绍  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  如何挑选高效建站主机与优质域名?  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  如何用景安虚拟主机手机版绑定域名建站?  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  如何在香港服务器上快速搭建免备案网站?  无锡营销型网站制作公司,无锡网选车牌流程?  Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  JavaScript如何实现路由_前端路由原理是什么  如何用搬瓦工VPS快速搭建个人网站?  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  如何快速搭建FTP站点实现文件共享?  Python企业级消息系统教程_KafkaRabbitMQ高并发应用  Laravel中的Facade(门面)到底是什么原理  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】  北京企业网站设计制作公司,北京铁路集团官方网站?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  在线教育网站制作平台,山西立德教育官网?  制作电商网页,电商供应链怎么做?  在线制作视频的网站有哪些,电脑如何制作视频短片?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  大学网站设计制作软件有哪些,如何将网站制作成自己app?  EditPlus中的正则表达式实战(5)  如何在服务器上三步完成建站并提升流量?  Laravel如何使用Vite进行前端资源打包?(配置示例)  音乐网站服务器如何优化API响应速度?  Linux系统命令中tree命令详解  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  如何在腾讯云免费申请建站?  高端建站三要素:定制模板、企业官网与响应式设计优化  Laravel如何优化应用性能?(缓存和优化命令)  怎么用AI帮你设计一套个性化的手机App图标?  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  Laravel如何使用Blade组件和插槽?(Component代码示例)  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】