Angular-seed源码解释

10 篇文章 0 订阅
9 篇文章 0 订阅

angular-seed中的常见代码解释。

1. index.html

angular-seed中的index.html,用第三方库html5-boilerplate,对多浏览器兼容方面做了很全面的考虑(CSS reset,IE不同版本,移动端,browsehappy),值得借鉴。

1.1 meta http-equiv

<meta http-equiv="X-UA-Compatible" content="IE=edge">

IE8专用的meta标记。用于指定IE8用哪种模式(IE6/IE7)去渲染浏览器[3]。IE=edge说明什么版本的IE就用什么版本的模式。

1.2 width=device-width

<meta name="viewport" content="width=device-width, initial-scale=1">

为移动设备考虑的,使布局和移动设备相等(自动拉伸一些内容)。做响应式设计,一定要添加这行[4]。

1.3 第三方库:html5-boilerplate

Boilerplate是一个前端开发模块(包括了一堆css和js以及第三方lib)。他是从web稳定性、兼容性方面来提高web性能的。

  • HTML5集成,使低版本浏览器能兼容HTML5(浏览器兼容);
  • CSS3集成,集成了很多大牛们口口相传的CSS技巧;
  • 包括了Normalize.css,做CSS reset用的(浏览器兼容);
  • 集成了Modernizr,用于检测浏览器功能支持情况(浏览器兼容);
  • Google, Microsoft, NASA都在用boilerplate(使用广泛);
  • 大量针对服务器的默认配置,无需修改即可配置一个安全、标准的 web 服务器;

1.4 第三方库:Modernizr

老版本的浏览器目前不会被完全取代,所以我们很难在web中使用CSS3 或 HTML5 功能。 Modernizr 是一个JS库,Modernizr 检测浏览器对 CSS3 或 HTML5 功能支持情况。 Modernizr 只做浏览器feature检测,并不能添加老版本浏览器不支持的功能。
biolerplate包括了modernizr,所以我们才能看到index.html中有如下的浏览器判断与class选择。

<!--[if lt IE 7]>      <html lang="en" ng-app="myApp" class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>         <html lang="en" ng-app="myApp" class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>         <html lang="en" ng-app="myApp" class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html lang="en" ng-app="myApp" class="no-js"> <!--<![endif]-->

2 启动过程

  1. index.html,加载第三方lib及angular.js
  2. index.html 加载app.js,app.js通过前端路由加载view1
  3. view1的路由指定了要加载的模板:view1/view.html
  4. ng将view1/view.html加载到index.html中的ng-view中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值