Advertisement
Guest User

Untitled

a guest
Jul 12th, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.80 KB | None | 0 0
  1. import { NgModule } from '@angular/core';
  2. import { BrowserModule } from '@angular/platform-browser';
  3. import { FormsModule, ReactiveFormsModule} from '@angular/forms';
  4. import { RouterModule } from '@angular/router';
  5. import { HttpModule } from '@angular/Http';
  6.  
  7. import { AppComponent } from "./components/app/app.component";
  8. import { MessageComponent } from "./components/messages/message.component";
  9. import { MessageListComponent } from "./components/messages/message-list.component";
  10. import { MessageInputComponent } from "./components/messages/message-input.component";
  11. import {MessageService} from "./components/messages/message.service";
  12. import {MessagesComponent} from "./components/messages/messages.component";
  13. import {AuthenticationComponent} from "./components/auth/authentication.component";
  14. import {routing} from "./components/app/routes";
  15. import {HeaderComponent} from "./components/app/header.component";
  16. import {LogoutComponent} from "./components/auth/logout.component";
  17. import {SigninComponent} from "./components/auth/signin.component";
  18. import {SignupComponent} from "./components/auth/signup.component";
  19. import {AuthenticationService} from "./components/auth/authentication.service";
  20.  
  21. @NgModule({
  22. declarations: [
  23. AppComponent,
  24. MessageComponent,
  25. MessagesComponent,
  26. MessageListComponent,
  27. MessageInputComponent,
  28. AuthenticationComponent,
  29. HeaderComponent,
  30. LogoutComponent,
  31. SigninComponent,
  32. SignupComponent
  33.  
  34. ],
  35. imports: [BrowserModule,
  36. FormsModule,
  37. RouterModule,
  38. HttpModule,
  39. ReactiveFormsModule,
  40. routing],
  41. providers: [MessageService,
  42. AuthenticationService],
  43. bootstrap: [AppComponent]
  44.  
  45. })
  46. export class AppModule {
  47.  
  48. }
  49.  
  50. import {Http, Headers, Response} from "@angular/http";
  51. import {User} from "../../models/user.model";
  52. import 'rxjs/Rx';
  53. import { Observable } from "rxjs/Observable";
  54. import { Injectable } from "@angular/core";
  55.  
  56. @Injectable()
  57. export class AuthenticationService{
  58. constructor(private http: Http){}
  59.  
  60. signUp(user: User){
  61. const body = JSON.stringify(user);
  62. const headers = new Headers({'Content-Type' : 'application/json'});
  63.  
  64. return this.http.post('http://localhost:3000/user', body, {headers: headers})
  65. .map((response: Response) => response.json())
  66. .catch((error: Response) => Observable.throw(error.json()));
  67. }
  68. }
  69.  
  70. import { Component, OnInit } from '@angular/core';
  71. import { FormGroup, Validators, FormControl } from '@angular/forms';
  72. import { AuthenticationService } from "./authentication.service";
  73. import { User } from "../../models/user.model";
  74.  
  75. @Component({
  76. selector: 'app-signup',
  77. templateUrl: 'signup.component.html',
  78. })
  79. export class SignupComponent implements OnInit {
  80. myForm: FormGroup;
  81.  
  82. constructor(private authenticationService: AuthenticationService) {
  83. }
  84.  
  85. onSubmit() {
  86. const user = new User(
  87. this.myForm.value.email,
  88. this.myForm.value.password,
  89. this.myForm.value.firstName,
  90. this.myForm.value.lastName
  91. );
  92. this.authenticationService.signUp(user).subscribe(
  93. data => console.log(data),
  94. error => console.log(error)
  95. );
  96. this.myForm.reset();
  97. }
  98.  
  99. ngOnInit(){
  100. this.myForm = new FormGroup({
  101. firstName: new FormControl(null, Validators.required),
  102. lastName: new FormControl(null, Validators.required),
  103. email: new FormControl(null, [
  104. Validators.required,
  105. Validators.pattern("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?")
  106. ]),
  107. password: new FormControl(null, Validators.required)
  108. })
  109. }
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement