Skip to content

Commit

Permalink
blog and blog service
Browse files Browse the repository at this point in the history
  • Loading branch information
donank committed Jul 2, 2019
1 parent 367c743 commit d3b3c2f
Show file tree
Hide file tree
Showing 8 changed files with 85 additions and 2 deletions.
6 changes: 5 additions & 1 deletion src/app/app-routing.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { Routes, RouterModule } from '@angular/router';
import { HomeComponent } from './home/home.component'
import { BlogComponent } from './blog/blog.component';
import { ProjectsComponent } from './projects/projects.component';
import { BlogitemComponent } from './blogitem/blogitem.component';


const routes: Routes = [
Expand All @@ -17,7 +18,10 @@ const routes: Routes = [
},
{
path: 'blog',
component: BlogComponent
component: BlogComponent,
children: [
{ path: ':id', component: BlogitemComponent }
]
}
];

Expand Down
4 changes: 3 additions & 1 deletion src/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import { environment } from '../environments/environment';
import { ProjectsComponent } from './projects/projects.component';
import { BlogComponent } from './blog/blog.component';
import { AngularFirestore } from '@angular/fire/firestore';
import { BlogitemComponent } from './blogitem/blogitem.component';


@NgModule({
Expand All @@ -23,7 +24,8 @@ import { AngularFirestore } from '@angular/fire/firestore';
FooterComponent,
HomeComponent,
ProjectsComponent,
BlogComponent
BlogComponent,
BlogitemComponent
],
imports: [
BrowserModule,
Expand Down
Empty file.
1 change: 1 addition & 0 deletions src/app/blogitem/blogitem.component.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<span innerHtml="blog.content"></span>
25 changes: 25 additions & 0 deletions src/app/blogitem/blogitem.component.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';

import { BlogitemComponent } from './blogitem.component';

describe('BlogitemComponent', () => {
let component: BlogitemComponent;
let fixture: ComponentFixture<BlogitemComponent>;

beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ BlogitemComponent ]
})
.compileComponents();
}));

beforeEach(() => {
fixture = TestBed.createComponent(BlogitemComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});

it('should create', () => {
expect(component).toBeTruthy();
});
});
25 changes: 25 additions & 0 deletions src/app/blogitem/blogitem.component.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { FetchBlogService } from '../services/fetch-blog.service';
import { Blog } from '../models/blog/blog.model';

@Component({
selector: 'app-blogitem',
templateUrl: './blogitem.component.html',
styleUrls: ['./blogitem.component.css']
})
export class BlogitemComponent implements OnInit {

blog: Blog
id: string

constructor(private activatedRoute: ActivatedRoute, private fetchBlogService: FetchBlogService) { }

ngOnInit() {
this.id = this.activatedRoute.snapshot.paramMap.get('id');
this.fetchBlogService.fetchBlogById(this.id).get().subscribe(blog => {
this.blog = blog.data() as Blog
})
}

}
12 changes: 12 additions & 0 deletions src/app/services/fetch-blog.service.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { TestBed } from '@angular/core/testing';

import { FetchBlogService } from './fetch-blog.service';

describe('FetchBlogService', () => {
beforeEach(() => TestBed.configureTestingModule({}));

it('should be created', () => {
const service: FetchBlogService = TestBed.get(FetchBlogService);
expect(service).toBeTruthy();
});
});
14 changes: 14 additions & 0 deletions src/app/services/fetch-blog.service.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import { Injectable } from '@angular/core';
import { AngularFirestore } from '@angular/fire/firestore';

@Injectable({
providedIn: 'root'
})
export class FetchBlogService {

constructor(private firestore: AngularFirestore) { }

fetchBlogById(id: string){
return this.firestore.collection("blogs").doc(id)
}
}

0 comments on commit d3b3c2f

Please sign in to comment.