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


相关推荐: php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  高端企业智能建站程序:SEO优化与响应式模板定制开发  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  微信公众帐号开发教程之图文消息全攻略  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  Laravel如何创建自定义Artisan命令?(代码示例)  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  C语言设计一个闪闪的圣诞树  Laravel安装步骤详细教程_Laravel环境搭建指南  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  Windows Hello人脸识别突然无法使用  如何快速使用云服务器搭建个人网站?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  LinuxCD持续部署教程_自动发布与回滚机制  如何用VPS主机快速搭建个人网站?  百度浏览器如何管理插件 百度浏览器插件管理方法  晋江文学城电脑版官网 晋江文学城网页版直接进入  Laravel API资源类怎么用_Laravel API Resource数据转换  米侠浏览器网页背景异常怎么办 米侠显示修复  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  如何用好域名打造高点击率的自主建站?  Laravel如何与Inertia.js和Vue/React构建现代单页应用  太平洋网站制作公司,网络用语太平洋是什么意思?  Laravel如何处理异常和错误?(Handler示例)  Python文件异常处理策略_健壮性说明【指导】  IOS倒计时设置UIButton标题title的抖动问题  b2c电商网站制作流程,b2c水平综合的电商平台?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  如何快速搭建高效WAP手机网站吸引移动用户?  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  Android Socket接口实现即时通讯实例代码  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  高性价比服务器租赁——企业级配置与24小时运维服务  详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  Android GridView 滑动条设置一直显示状态(推荐)  如何在七牛云存储上搭建网站并设置自定义域名?  如何在橙子建站上传落地页?操作指南详解  php打包exe后无法访问网络共享_共享权限设置方法【教程】  Laravel如何使用.env文件管理环境变量?(最佳实践)  微信小程序 配置文件详细介绍  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】