如何避免屏幕闪烁与 AngularJs.
How to avoid screen flickering with AngularJs?
我是角度的新手。我使用AngularJS来开发前端。但是在初始级别,我面临加载页面时闪烁某些内容的问题。
我的问题是,当我在 localhost 中运行我的应用程序时,有时它会在屏幕上显示数据绑定表达式,或者在浏览器上显示一些疯狂的输出。我使用了ng-clock
(由angularjs文档建议),尽管我的问题没有解决。
我的 html 文件太小了,虽然它闪烁,但没有做很多事情。请注意,我的脚本标签放在底部。请给我一些想法,以防止AngularJS中的这个东西之王。
索引.html
<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<title>Sample App</title>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="styles/cover.css">
<link rel="stylesheet" href="styles/sidebar.css">
<style type="text/css"></style>
<script src="node_modules/jquery/dist/jquery.min.js"></script>
<script>
window.jQuery || document.write('<script src="node_modules/jquery/dist/jquery.min.js"><'/script>')
</script>
<script src="node_modules/angular/angular.min.js"></script>
</head>
<body ng-controller="mainCtrl" ng-cloak>
<div class="site-wrapper">
<div class="site-wrapper-inner">
<div class="masthead clearfix">
<div class="inner">
<div ng-include src="'views/header.html'"></div>
</div>
</div>
<div class="inner" ng-clock>
<div ng-if="hasSidebar" ng-include src="'views/sidebar.html'" id="sidebar" ng-cloak></div>
<div id="view" ng-view></div>
</div>
<div class="mastfoot">
<div class="inner">
<p>Cover template</p>
</div>
</div>
</div>
</div>
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="node_modules/angular-route/angular-route.min.js"></script>
<script src="controllers/app.js"></script>
</body>
</html>
标头.html
<h3 class="masthead-brand">Cover</h3>
<nav>
<ul class="nav masthead-nav">
<li class="active"><a ng-href="#/home">Home</a></li>
<li><a ng-href="#/features">Features</a></li>
<li><a ng-href="#/contact">Contact</a></li>
<li><a ng-href="#/dashboard">Dashboard</a></li>
</ul>
</nav>
侧边栏.html
<ul class="list-unstyled">
<li><a href="#">link1</a></li>
<li><a href="#">link2</a></li>
<li><a href="#">link3</a></li>
<li><a href="#">link4</a></li>
<li><a href="#">link5</a></li>
<li><a href="#">link6</a></li>
</ul>
仪表板.html
<div id="content">
<h1>Dashboard</h1>
</div>
这可能是因为您在页面底部加载了 AngularJS 脚本。
请注意,当您指定 ng-cloak
指令时,是 Angular 本身隐藏了元素。
由于您让浏览器渲染页面然后加载 Angular,因此那里的时差可能会导致"闪烁"。尝试将脚本标记放在页面顶部。
摘自关于ngCloak的AngularJS文档:
为了获得最佳效果,必须在头部加载角度.js脚本 部分;或者,上面的 CSS 规则必须 包含在应用程序的外部样式表中。
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- AngularJS:我可以跳过函数参数回调吗
- AngularJS UI路由器不能像ng路由器那样工作
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- 如何包含特定于每个视图angularjs的javascript文件
- 为什么在单独的函数中应用时转换会闪烁/断断续续(D3)
- AngularJS:ng之后,重复$scope值未按预期更新
- AngularJS-在JSON选择器中使用变量名
- $window.ga在AngularJS事件中未定义
- 延迟 AngularJS 路由更改,直到加载模型以防止闪烁
- angularjs:创建用于闪烁消息的系统
- 如何避免屏幕闪烁与 AngularJs.
- AngularJS-ng斗篷按钮不工作(闪烁仍然存在)在铬-ng斗篷不工作'由于某种原因,它甚至没有被添加到CS
- AngularJS - ngShow/ngSwitch/ngIf -两个元素闪烁
- 闪烁的数据更新Angularjs
- 使用AngularJS淡化闪烁按钮
- 在AngularJS中,当定期重新加载数据时,数据会闪烁
- AngularJS指令,用于设置滚动时的CSS闪烁
- 即使在AngularJS中使用ng斗篷,页脚模板也会闪烁
- AngularJS:不同的REST更新,以避免闪烁