205 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			205 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
block includes
 | 
						|
  include ../_util-fns
 | 
						|
  - var _at_angular = '@angular'
 | 
						|
 | 
						|
:marked
 | 
						|
  # Browser support #  
 | 
						|
  Angular supports most recent browsers. This includes the following specific versions:
 | 
						|
 | 
						|
table
 | 
						|
  tr
 | 
						|
    th Chrome
 | 
						|
    th Firefox
 | 
						|
    th Edge
 | 
						|
    th IE
 | 
						|
    th Safari
 | 
						|
    th iOS
 | 
						|
    th Android
 | 
						|
    th IE mobile
 | 
						|
  tr
 | 
						|
    td latest
 | 
						|
    td latest
 | 
						|
    td 14
 | 
						|
    td 11
 | 
						|
    td 10
 | 
						|
    td 10
 | 
						|
    td Marshmallow (6.0)
 | 
						|
    td 11
 | 
						|
  tr
 | 
						|
    td
 | 
						|
    td
 | 
						|
    td 13
 | 
						|
    td 10
 | 
						|
    td 9
 | 
						|
    td 9
 | 
						|
    td Lollipop<br>(5.0, 5.1)
 | 
						|
    td
 | 
						|
  tr
 | 
						|
    td
 | 
						|
    td
 | 
						|
    td
 | 
						|
    td 9
 | 
						|
    td 8
 | 
						|
    td 8
 | 
						|
    td KitKat<br>(4.4)
 | 
						|
    td
 | 
						|
  tr
 | 
						|
    td
 | 
						|
    td
 | 
						|
    td
 | 
						|
    td
 | 
						|
    td 7
 | 
						|
    td 7
 | 
						|
    td Jelly Bean<br>(4.1, 4.2, 4.3)
 | 
						|
    td
 | 
						|
    
 | 
						|
    
 | 
						|
.l-sub-section
 | 
						|
  :marked
 | 
						|
    Angular's continuous integration process runs unit tests of the framework on all of these browsers for every pull request, 
 | 
						|
    using <a href="https://saucelabs.com/" target="_blank">SauceLabs</a> and 
 | 
						|
    <a href="https://www.browserstack.com" target="_blank">Browserstack</a>.
 | 
						|
 | 
						|
:marked
 | 
						|
  # Polyfills #
 | 
						|
  Angular is built on the latest standards of the web platform.
 | 
						|
  Targeting such a wide range of browsers is challenging because they do not support all features of modern browsers.
 | 
						|
  
 | 
						|
  You compensate by loading polyfill scripts ("polyfills") on the host web page (`index.html`)
 | 
						|
  that implement missing features in JavaScript.
 | 
						|
+makeExample('quickstart/ts/index.html', 'polyfills')(format='.')
 | 
						|
:marked
 | 
						|
  A particular browser may require at least one polyfill to run _any_ Angular application. 
 | 
						|
  You may need additional polyfills for specific features.
 | 
						|
 | 
						|
  The tables below will help you determine which polyfills to load, depending on the browsers you target and the features you use.
 | 
						|
  
 | 
						|
.alert.is-important
 | 
						|
  :marked
 | 
						|
    The suggested polyfills are the ones we know will run full Angular applications.
 | 
						|
    You may need additional polyfills to support features not covered by this list.
 | 
						|
    Note that polyfills cannot magically transform an old, slow browser into a modern, fast one.
 | 
						|
  
 | 
						|
:marked
 | 
						|
  ## Mandatory polyfills ##
 | 
						|
  These are the polyfills required to run an Angular application on each supported browser:
 | 
						|
  
 | 
						|
table
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    th Browsers (desktop & mobile)
 | 
						|
    th Polyfills required
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td Chrome, Firefox, Edge, Safari 9+
 | 
						|
    td None
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td Safari 7 & 8, IE10 & 11, Android 4.1+
 | 
						|
    td
 | 
						|
      :marked
 | 
						|
        [ES6](#core-es6)
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td IE9
 | 
						|
    td
 | 
						|
      :marked
 | 
						|
        [ES6<br>classList](#classlist)
 | 
						|
 | 
						|
:marked
 | 
						|
  ## Optional browser features to polyfill ##
 | 
						|
  Some features of Angular may require additional polyfills.
 | 
						|
  
 | 
						|
  For example, the animations library relies on the standard web animation API, which is only available in Chrome and Firefox today.
 | 
						|
  You'll need a polyfill to use animations in other browsers.
 | 
						|
  
 | 
						|
  Here are the features which may require additional polyfills:
 | 
						|
 | 
						|
table
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    th Feature
 | 
						|
    th Polyfill
 | 
						|
    th(style="width: 50%")  Browsers (desktop & mobile)
 | 
						|
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td
 | 
						|
      a(href="./animations.html") Animations
 | 
						|
    td
 | 
						|
      :marked
 | 
						|
        [Web Animations](#web-animations)
 | 
						|
    td All but Chrome and Firefox<br>Not supported in IE9
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td
 | 
						|
      a(href="../api/common/index/DatePipe-pipe.html" target="_blank") Date
 | 
						|
      span ,  
 | 
						|
      a(href="../api/common/index/CurrencyPipe-pipe.html" target="_blank") currency
 | 
						|
      span , 
 | 
						|
      a(href="../api/common/index/DecimalPipe-pipe.html" target="_blank") decimal
 | 
						|
      span  and 
 | 
						|
      a(href="../api/common/index/PercentPipe-pipe.html" target="_blank") percent
 | 
						|
      span  pipes
 | 
						|
    td
 | 
						|
      :marked
 | 
						|
        [Intl API](#intl)
 | 
						|
    td All but Chrome, Firefox, Edge, IE11 and Safari 10
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td 
 | 
						|
      a(href="../api/common/index/NgClass-directive.html" target="_blank") NgClass
 | 
						|
      span  on SVG elements
 | 
						|
    td 
 | 
						|
      :marked
 | 
						|
        [classList](#classlist)
 | 
						|
    td IE10, IE11
 | 
						|
  tr(style="vertical-align: top") 
 | 
						|
    td
 | 
						|
      a(href="./server-communication.html") Http
 | 
						|
      span  when sending and receiving binary data
 | 
						|
    td 
 | 
						|
      :marked
 | 
						|
        [Typed Array](#typedarray) <br>[Blob](#blob)<br>[FormData](#formdata)
 | 
						|
    td IE 9
 | 
						|
 | 
						|
:marked
 | 
						|
  ## Suggested polyfills ##
 | 
						|
  Below are the polyfills which are used to test the framework itself. They are a good starting point for an application. 
 | 
						|
 | 
						|
table
 | 
						|
  tr
 | 
						|
    th Polyfill
 | 
						|
    th Licence
 | 
						|
    th Size*
 | 
						|
  tr
 | 
						|
    td
 | 
						|
      a#core-es6(href="https://github.com/zloirock/core-js" target="_blank") ES6
 | 
						|
    td MIT
 | 
						|
    td 27.4KB
 | 
						|
  tr
 | 
						|
    td
 | 
						|
     a#classlist(href="https://github.com/eligrey/classList.js" target="_blank") classList
 | 
						|
    td Public domain
 | 
						|
    td 1KB
 | 
						|
  tr
 | 
						|
    td
 | 
						|
     a#intl(href="https://github.com/andyearnshaw/Intl.js" target="_blank") Intl
 | 
						|
    td MIT / Unicode licence
 | 
						|
    td 13.5KB
 | 
						|
  tr
 | 
						|
    td 
 | 
						|
      a#web-animations(href="https://github.com/web-animations/web-animations-js" target="_blank") Web Animations
 | 
						|
    td Apache
 | 
						|
    td 14.8KB
 | 
						|
  tr
 | 
						|
    td
 | 
						|
      a#typedarray(href="https://github.com/inexorabletash/polyfill/blob/master/typedarray.js" target="_blank") Typed Array
 | 
						|
    td MIT
 | 
						|
    td 4KB
 | 
						|
  tr
 | 
						|
    td 
 | 
						|
      a#blob(href="https://github.com/eligrey/Blob.js" target="_blank") Blob
 | 
						|
    td MIT
 | 
						|
    td 1.3KB
 | 
						|
  tr
 | 
						|
    td 
 | 
						|
      a#formdata(href="https://github.com/francois2metz/html5-formdata" target="_blank") FormData
 | 
						|
    td MIT
 | 
						|
    td 0.4KB
 | 
						|
 | 
						|
:marked
 | 
						|
  * Figures are for minified and gzipped code, computed with the <a href="http://closure-compiler.appspot.com/home" target="_blank">closure compiler</a>
 |