Angular2: Изменение класса таба через ElementRef

Возвращаясь к прошлому примеру — в изменении не хватает активации пункта меню (вернее она есть — но мы не сможем с ней работать если нужно .active дописать к элементу li

<h1>{{title}}</h1>
<ul>
<li><a [routerLink]="['/data']" routerLinkActive="active">{{ 'Data' }}</a></li>
<li><a [routerLink]="['/contacts']" routerLinkActive="active">{{ 'Contacts' }}</a></li>
</ul>

Продолжить чтение…


Angular2: Изменение мета тайтла страницы и роутер

Когда мы разрабатываем приложение — то даже тривиальные задачи на новых движках могут быть неоднозначны, поэтому продолжаем наши игры с ангуляром. Я люблю чтобы сайты были «цельными» и каждая кнопочка меняла вид и что-то реальное делала, ну а изменение заголовков страницы при переходе на новый раздел — это уже «правило этикета» много лет.

Продолжить чтение…


Angular2: Ошибка переменной в шаблоне (no context)

Следи за собой, будь осторожен

Наивно полагая что все очень круто и можно вот так просто работать с переменной из загрузки я потеряла два часа времени на пустом месте, вокруг ошибки «нет такой data.id» и хоть разбейся. И ведь ее на самом деле и не было.

export class Data {
	id: number;
}
 
import { Component } from '@angular/core';
import { HTTP_PROVIDERS } from '@angular/http';
import { Data, DataService } from './app.data.service';
 
@Component({
	selector: 'my-app',
	providers: [DataService, HTTP_PROVIDERS],
	template : `{{data.id}}`
})
 
class AppComponent {
	private data : Data;
 
	constructor(private dataService: DataService) {
 
	}
	ngOnInit() {
		this.dataService.load().then(data => this.data = data);
	}
}
export {AppComponent};

А все почему — потому что шаблон выводился до загрузки. Решением стало дефолтное значение, и никаких no context в шаблоне.

class AppComponent {
	constructor(private dataService: DataService) {
		this.data.id = 11111;
	}
...

Angular2: Глобальные данные / настройки / переменные в приложение из PHP

Я люблю разные затейливые штуки — например продолжать писать серверную часть скриптов на PHP, а клиентские приложения делать «модно». Суть проблемы иногда маленькая, вроде передать что-то мелкое, но важное из PHP в наше приложение на Angular2.0. Вроде такого. Сходу работать не будет — но дальше в заметке описано как будет и как круто это потом будет для нас)

<script>
var SOME_PARAM = '<?php echo 'blabla'; ?>';
</script>

или даже так

<script>
var SOME_PARAM = '<?php echo json_encode(['name' => 'bla']); ?>';
</script>

Продолжить чтение…


Angular2: Данные через ajax запрос

После того, как мы сделали загрузчик данных как сервис, нас собственно нужно сделать его загрузчиком — чтобы данные приходили к нам через запрос к json api. В серверной части — можем хоть php, хоть golang — главное чтобы давало данные)

Продолжить чтение…