No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Debugging de la aplicaci贸n

25/28
Recursos

Aportes 16

Preguntas 4

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Peque帽o tip para VSCode, para seleccionar todas las ocurrencias de una sola vez, en Windows es Ctrl + F2.

Si les sale un error de tipo 鈥淧roperty 鈥榩layer鈥 does not
exist on type 鈥楶layerDialogComponent鈥.鈥

Es porque tiene que poner dentro de la clase PlayerDialogComponent un atributo player
"public player;"

Si llegan a tener el problema de que no aparece el bot贸n de New Player Form y de que tiene mucho scroll la pagina modifiquen este estilo del body:

Antes:

  body {
    font:  -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
    background-color: #f69d75;
    color: #555555;
  }

Despu茅s

  body {
    font-family:  -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
    background-color: #f69d75;
    color: #555555;
  }

Espero les sea util 馃槂

private team:any;
  public player:any;
  public countries = Object.keys(Country).map(key => ({ label: key, key: Country }));
  public squadNumber = Object.keys(SquadNumber)
    .slice(Object.keys(SquadNumber).length / 2)
    .map(key => ({
      label: key,
      key: SquadNumber[Number(key)]
    }));

Angular 12鈥

Cuidado con el input de leftFooted tipo checkbox, me di cuenta que se qued贸 con el atributo required y eso es incorrecto (se tiene que quitar). Como el jugador puede ser zurdo o no, el campo no debe ser obligatorio. Cada que pongamos a un diestro (dejando vac铆o el checkbox), Angular entender谩 que el formulario no es v谩lido.

Disculpen los estilos de esta aplicaci贸n donde los encuentro? ya que en el repo no est谩n y se pierden muchas cosas.

La estructura del curso es un poco desorganizada, hay partes que se omitieron como cuando el crea la funcionalidad de Close() y el problema con el asunto del evento para cerrar el formulario.
He gastado un tiempo considerable solo solucionado problemas , aunque eso siempre pasa pero para la duraci贸n de este curso me es un poco incomodo.

Bueno en realidad en este punto hay un error en el c贸digo o en la l贸gica mas bien, porque cuando guardas mas jugadores, en la tabla de MY TEAM solo en la columna de players solo muestra el ultimo que has agregado y en el colecci贸n de team.players de firebase siempre se guarda el ultimo no se crea un arreglo de players.

PD: pens茅 que era problema en mi c贸digo pero descargue la versi贸n que esta el Archivos y Enlaces, y el error persiste.

PD2: A alguien mas le ha pasado?

Por favor alguien tiene documentaci贸n un poco del error al que se refiere el profesor ?

Sigo impresionado de la facilidad con la que se puede enviar y recibir informaci贸n de angular a firebase

Buenos d铆as, por favor me ayudan con este error:
core.js:6210 ERROR RangeError: Maximum call stack size exceeded

Peque帽o tip para VSCode, para seleccionar cierta cantidad de ocurrencias para un fragmento de c贸digo, en Windows es Ctrl + D

Excelente curso!

No s茅 si soy el 煤nico con el error de que, cuando agrego un segundo jugador, 茅ste sobreescribe al primero (s贸lo en la tabla del equipo, no en la de jugadores).
.
Lo solucion茅 suscribi茅ndose al teamService cada que se va a agregar un jugador, para tomar el dato m谩s actualizado del equipo desde firebse, y ah铆, ya insertar el formattedTeam. El m茅todo newPlayer queda as铆:
.

private newPlayer(playerFormValue: any): void {
    const key = this.playerService.addPlayer(playerFormValue).key;
    const playerFormValueWithKey = {
      ...playerFormValue,
      key,
    };

    // team needs to be updated from firebase
    this.teamService
      .getTeams()
      .pipe(take(1))
      .subscribe((teams) => {
        this.team = teams[0];

        const formattedTeam = {
          ...this.team,
          players: [
            ...(this.team.players ? this.team.players : []),
            playerFormValueWithKey,
          ],
        };

        this.teamService.editTeam(formattedTeam);
      });
  }

No me muestra el modal, es decir la ventana NEW PLAYER FORM, encuentro el c贸digo igual, no se que pasa, alguien me puede ayudar

<div id="open-modal" class="modal-window">
    <div>
      <a href="#" title="Close" class="modal-close">Close</a>
      <h1>New Player Form</h1>
      <div>
        <form #playerForm="ngForm" novalidate (ngSubmit)="onSubmit(playerForm)">
          <div class="form-group">
            <label for="name">Name</label>
            <input type="text" class="form-control" name="name" [ngModel]="player?.name" ngModel required />
          </div>
  
          <div class="form-group">
            <label for="lastName">Last Name</label>
            <input type="text" class="form-control" name="lastName" [ngModel]="player?.lastName" ngModel required />
          </div>
  
          <div class="form-group">
            <label for="position">Position</label>
            <select class="form-control" name="position" [ngModel]="player?.position" ngModel required>
              <option *ngFor="let position of squadNumber" [value]="position.key">{{ position.label }}</option>
            </select>
          </div>
  
          <div class="form-group">
            <label for="weight">Weight</label>
            <input type="text" class="form-control" name="weight" [ngModel]="player?.weight" ngModel required />
          </div>
  
          <div class="form-group">
            <label for="height">Height</label>
            <input type="text" class="form-control" name="height" [ngModel]="player?.height" ngModel required />
          </div>
  
          <div class="form-group">
            <label for="nationality">Nationality</label>
            <select class="form-control" name="nationality" [ngModel]="player?.nationality" ngModel required>
              <option *ngFor="let nationality of countries" [value]="nationality.key">{{ nationality.label }}</option>
            </select>
          </div>
  
          <div class="form-group">
            <label for="leftFooted">Left Footed</label>
            <input type="checkbox" class="form-control checkbox" name="leftFooted" [ngModel]="player?.leftFooted" ngModel required />
          </div>
  
          <div class="submit-container">
            <button type="submit">Submit</button>
          </div>
        </form>
      </div>
    </div>
  </div>