Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { NgModule } from '@angular/core';
- import { BrowserModule } from '@angular/platform-browser';
- import { FormsModule, ReactiveFormsModule} from '@angular/forms';
- import { RouterModule } from '@angular/router';
- import { HttpModule } from '@angular/Http';
- import { AppComponent } from "./components/app/app.component";
- import { MessageComponent } from "./components/messages/message.component";
- import { MessageListComponent } from "./components/messages/message-list.component";
- import { MessageInputComponent } from "./components/messages/message-input.component";
- import {MessageService} from "./components/messages/message.service";
- import {MessagesComponent} from "./components/messages/messages.component";
- import {AuthenticationComponent} from "./components/auth/authentication.component";
- import {routing} from "./components/app/routes";
- import {HeaderComponent} from "./components/app/header.component";
- import {LogoutComponent} from "./components/auth/logout.component";
- import {SigninComponent} from "./components/auth/signin.component";
- import {SignupComponent} from "./components/auth/signup.component";
- import {AuthenticationService} from "./components/auth/authentication.service";
- @NgModule({
- declarations: [
- AppComponent,
- MessageComponent,
- MessagesComponent,
- MessageListComponent,
- MessageInputComponent,
- AuthenticationComponent,
- HeaderComponent,
- LogoutComponent,
- SigninComponent,
- SignupComponent
- ],
- imports: [BrowserModule,
- FormsModule,
- RouterModule,
- HttpModule,
- ReactiveFormsModule,
- routing],
- providers: [MessageService,
- AuthenticationService],
- bootstrap: [AppComponent]
- })
- export class AppModule {
- }
- import {Http, Headers, Response} from "@angular/http";
- import {User} from "../../models/user.model";
- import 'rxjs/Rx';
- import { Observable } from "rxjs/Observable";
- import { Injectable } from "@angular/core";
- @Injectable()
- export class AuthenticationService{
- constructor(private http: Http){}
- signUp(user: User){
- const body = JSON.stringify(user);
- const headers = new Headers({'Content-Type' : 'application/json'});
- return this.http.post('http://localhost:3000/user', body, {headers: headers})
- .map((response: Response) => response.json())
- .catch((error: Response) => Observable.throw(error.json()));
- }
- }
- import { Component, OnInit } from '@angular/core';
- import { FormGroup, Validators, FormControl } from '@angular/forms';
- import { AuthenticationService } from "./authentication.service";
- import { User } from "../../models/user.model";
- @Component({
- selector: 'app-signup',
- templateUrl: 'signup.component.html',
- })
- export class SignupComponent implements OnInit {
- myForm: FormGroup;
- constructor(private authenticationService: AuthenticationService) {
- }
- onSubmit() {
- const user = new User(
- this.myForm.value.email,
- this.myForm.value.password,
- this.myForm.value.firstName,
- this.myForm.value.lastName
- );
- this.authenticationService.signUp(user).subscribe(
- data => console.log(data),
- error => console.log(error)
- );
- this.myForm.reset();
- }
- ngOnInit(){
- this.myForm = new FormGroup({
- firstName: new FormControl(null, Validators.required),
- lastName: new FormControl(null, Validators.required),
- email: new FormControl(null, [
- Validators.required,
- 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])?")
- ]),
- password: new FormControl(null, Validators.required)
- })
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement