AngularJS tooling

From Wiki @ Karl Jones dot com
Revision as of 14:40, 16 February 2019 by Karl Jones (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This article discusses tooling practices for AngularJS.

Code editors

Top Angular Code Editors - by Murtaza Basrai (3rd July, 2017):

https://www.icicletech.com/blog/angular-2-ecosystem-review-top-angular-code-editors

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

Supported natively.

No module system.

It exposes global ng namespace with methods to build application.

No need for build system or transpiler.

No type files or configs.

Documentation lacking.

Advice: don't do it.

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.

Build system

See AngularJS build system.

See also