curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt install git-all
## Comparision | |
| | for..in | for..of | | |
|------|------ | ------ | | |
| Applies to | Enumerable Properties | Iterable Collections | | |
| Use with Objects? | Yes | No | | |
| Use with Arrays? | Yes, but not advised | Yes | | |
| Use with Strings? | Yes, but not advised | Yes | |
// Number 1 | |
function greetings (name) { | |
return 'hello ' + name | |
} | |
// Number 2 | |
var obj1 = { a: 1, b: 2 } | |
var obj2 = { a: 2, c: 3, d: 4} |
this._router.events.pipe( | |
filter((event) => event instanceof NavigationEnd) | |
, map(() => this.activatedRoute) | |
, map((route) => { | |
while (route.firstChild) route = route.firstChild; | |
return route; | |
})).pipe( | |
filter((route) => route.outlet === 'primary') | |
, mergeMap((route) => route.data)) | |
.subscribe((event) => this.title = event.title); |
@Directive({ | |
// tslint:disable-next-line:directive-selector | |
selector: "[OnlyNumber]" | |
}) | |
export class OnlyNumberDirective { | |
constructor(private el: ElementRef) { } | |
@Input() OnlyNumber: boolean; |
@Directive({ | |
// tslint:disable-next-line:directive-selector | |
selector: "[draggable]" | |
}) | |
export class DraggableDirective implements AfterViewInit, OnDestroy { | |
@Input() dragHandle: string; | |
@Input() dragTarget: string; |
<!-- #scrollMe [scrollTop]="scrollMe.scrollHeight" remove this for normal scroll --> | |
<div class="comment-list" #scrollMe [scrollTop]="scrollMe.scrollHeight" infiniteScroll scrollPerecnt="20" | |
[immediateCallback]="true" [scrollCallback]="scrollCallback"> | |
import { Directive, HostListener } from '@angular/core'; | |
@Directive({ | |
selector: '[CopyPasteBlock]' | |
}) | |
export class CopyPasteBlockDirective { | |
constructor() { } | |
@HostListener('paste', ['$event']) blockPaste(e: KeyboardEvent) { |
import morgan from "morgan"; | |
import e from "express"; | |
const loggerTemplate = ( | |
tokens: morgan.TokenIndexer, | |
req: e.Request, | |
res: e.Response | |
) => | |
[ | |
tokens.method(req, res), |