0.0.2 • Published 7 years ago

angular-runtime-types v0.0.2

Weekly downloads
4
License
MIT
Repository
github
Last release
7 years ago

Problem Domain

Motivation

Consider the following very simple Angular2 component written in Typescript:

import { Component } from '@angular/core';

@Component({
  selector: 'page-home',
  template: '<button (click)="foo = 'haha'">Click to destroy happiness of mankind</button>'
})
export class HomePage {
  foo: number = 4;
}

The biggest benefit of using Typescript in a JavaScript project is the Typesafety it provides. However, code inside of Angular templates will not be check during compiletime. Since it is allready JavaScript at runtime, the code above will set the numeric value foo above to a string value and change it's "type" to string.

Many errors one can make in template files are often difficult to spot or understand because of this.

Usage/Solution

This package provides new Types for all primitives which will check all assignments at runtime, so that you actually get feedback if you make an error at runtime in your template files.

Primitives

todo

Array

todo

List

todo

Map

todo

Dictionary

todo

Development

Feel free to submit pullrequests at any time.

Getting the project

  1. Clone from github
  2. Run npm install
  3. Install globally npm install -g typescript

Building

If you are using VSCode (which you should :)) than just press Ctrl+Shift+B to run the Build Task. If not you can run

tsc -p ./ts/

in the project directory.

Running Tests

The test are written in mocha. You can run them with

npm tests

in the project directory.