Difference between revisions of "AngularJS tooling"
Karl Jones (Talk | contribs) (→Typings) |
Karl Jones (Talk | contribs) (→ES6) |
||
Line 33: | Line 33: | ||
* Multi-line templates | * Multi-line templates | ||
* Arrow functions | * Arrow functions | ||
+ | |||
+ | Almost the same as TypeScript but without types and interfaces. | ||
+ | |||
+ | Define dependency parameters explicitly for DI to work properly. | ||
+ | |||
+ | Use the same build system, or switch out transpiler (babel). | ||
== ES5 == | == ES5 == |
Revision as of 13:43, 31 December 2016
The AngularJS framework
Module loader
- Not required, but recommended.
- Load only what is needed
- Provide namespacing
- Don't need script tags
Modules provide translation between a module (file) and a pseudo module (wrapped function).
See AngularJS module.
Webpack
One of the most popular module loaders.
Allows any sort of file (JSON, CSS, etc.) to be imported as a module.
In addition to being useful for module loading, Webpack is also useful for the entire build process.
See Webpack.
ES6
ES6 is latest (2016) standard for JavaScript.
New features include:
- Module system
- New array methods
- Classes
- Multi-line templates
- Arrow functions
Almost the same as TypeScript but without types and interfaces.
Define dependency parameters explicitly for DI to work properly.
Use the same build system, or switch out transpiler (babel).
ES5
TypeScript
TypeScript is a typed superset of JavaScript.
Compiled language, catches errors before runtime.
Includes features of ES6 but with type, as well as better tooling support.
TypeScript allows classes to be decorated with @<Decorator
.
See also TypeScript.
Typings
types is an NPM package to handle the type definitions associated with third-party libraries.