Skip to content

Instantly share code, notes, and snippets.

View thisiszoaib's full-sized avatar

Zoaib thisiszoaib

View GitHub Profile
export class ChipsMultiSelectComponent implements OnInit, ControlValueAccessor {
writeValue(value: string[]): void {
}
registerOnChange(fn: any): void {
}
registerOnTouched(fn: any): void {
}
<mat-chip #c="matChip" *ngFor="let option of options" [value]="option">
<mat-icon *ngIf="c.selected">check</mat-icon>
{{option}}
</mat-chip>
<mat-chip-list selectable multiple>
<mat-chip #c="matChip" *ngFor="let option of options" [value]="option" (click)="toggleSelection(c)">
{{option}}
</mat-chip>
</mat-chip-list>
<mat-chip-list selectable multiple>
<mat-chip #c="matChip" *ngFor="let option of options" [value]="option" (click)="toggleSelection(c)">
{{option}}
</mat-chip>
</mat-chip-list>
<mat-chip-list>
<mat-chip *ngFor="let option of options" [value]="option">
{{option}}
</mat-chip>
</mat-chip-list>
<a mat-tab-link *ngFor="let tabItem of tabs"
[routerLink]="tabItem.route"
routerLinkActive
#rla="routerLinkActive"
[active]="rla.isActive">
...
</a>
const routes: Routes = [
{
path: '',
pathMatch: 'full',
redirectTo: 'one',
},
{
path: 'one',
loadChildren: () =>
import('./section-one/section-one.module').then(
@NgModule({
declarations: [SectionOneComponent],
imports: [
CommonModule,
RouterModule.forChild(
[{ path: '', component: SectionOneComponent }]
),
MatCardModule,
MatButtonModule,
],
<mat-toolbar color="primary">
Material Tabs with Lazy Loaded Routes
</mat-toolbar>
<nav mat-tab-nav-bar>
<a mat-tab-link *ngFor="let tabItem of tabs">
<mat-icon class="mr-8">{{tabItem.icon}}</mat-icon>
{{tabItem.label}}
</a>
</nav>
@thisiszoaib
thisiszoaib / app.component.ts
Created November 14, 2020 14:20
Card Game 7
checkForCardMatch(): void {
setTimeout(() => {
const cardOne = this.flippedCards[0];
const cardTwo = this.flippedCards[1];
const nextState = cardOne.imageId === cardTwo.imageId ? 'matched' : 'default';
cardOne.state = cardTwo.state = nextState;
this.flippedCards = [];