Olá Professor Gabriel.
Antes de mais nada, que lhe parabenizar pela qualidade do curso até aqui. Muito bom mesmo.
Seguinte:
Ao clicar para agendar um test drive, recebo o alert "Agendou!" ou "Deu Problema!". Em seguida lá no terminal o WebService dá erro e para.
Já conferi umas 4x tudo que fiz e não encontrei nada diferente do que está na sua videoaula. Poderia me ajudar?
Vou colar aqui embaixo algumas coisas para você conferir:
1 - Método agenda() em Cadastro.ts:
agenda(){ / console.log(this.nome); console.log(this.endereco); console.log(this.email); console.log(this.data); /
let agendamento = { nomeCliente: this.nome, enderecoCliente: this.endereco, emailCliente: this.email, modeloCarro: this.carro.nome, precoTotal: this.precoTotal };
this._agendamentosService.agenda(agendamento).subscribe( () => alert('Agendou!'), () => alert('Deu problema!') );
}
2 - Classe AgendamentosServiceProvider:
import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http';
@Injectable() export class AgendamentosServiceProvider {
private _url = 'http://localhost:8080/api';
constructor(private _http: HttpClient) { //console.log('Hello AgendamentosServiceProvider Provider'); }
agenda(agendamento) { return this._http.post(this._url + '/agendamento/agenda', agendamento); }
}
3 - Erro que o terminal exibe um ou dois segundos após aparecer o alert no navegador:
node server.js
Servidor rodando em http://localhost:8080 Agendamento recebido: {"nomeCliente":"ffff","enderecoCliente":"fffff","emailCliente":"fffff","modeloCarro":"Azera V6","precoTotal":85000} /Users/fabricio/Projetos/IonicProjects/concessionaria-webservice/api.js:67 const agendamentoId = agendamento.emailCliente + agendamento.data.substr(0, 10); ^
TypeError: Cannot read property 'substr' of undefined
at enviaNotificacao (/Users/fabricio/Projetos/IonicProjects/concessionaria-webservice/api.js:67:75)
at Timeout.setTimeout [as _onTimeout] (/Users/fabricio/Projetos/IonicProjects/concessionaria-webservice/api.js:46:30)
at ontimeout (timers.js:458:11)
at tryOnTimeout (timers.js:296:5)
at Timer.listOnTimeout (timers.js:259:5)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! api@1.0.0 start: node server.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the api@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in: npm ERR! /Users/fabricio/.npm/_logs/2018-04-08T17_45_05_140Z-debug.log Macbook-de-Fabricio:concessionaria-webservice fabricio$
4 - Aproveitei p visualizar o referido arquivo de log apontado no erro acima:
Coloquei no gist: https://gist.github.com/fabriciocurvello/d9c8f40d41e43f96f0ee296068315529