angular - TypeError: 'caller', 'callee' och 'arguments'-egenskaper får inte nås på funktioner i strikt läge eller på arguments-objekt för anrop till dem


Jag får detta fel "TypeError: 'caller', 'callee' och 'arguments'-egenskaperna får inte nås på funktioner i strikt läge eller på arguments-objekt för anrop till dem" varje gång jag försöker anropa en funktion från min resolution i mitt löfte. Detta fungerade perfekt under flera dagar och nu plötsligt fungerar det inte. Jag försökte också skicka samma värden genom resolutionen i löftet. Funktionen som orsakar detta fel är: this.authenticateUser(registerForm.value);

Jag har försökt att lägga till olika värden i funktionsparameterns fält fungerar inte. Den

import { NgForm } from '@angular/forms';
import { Router } from '@angular/router';
import { HttpClient, HttpHeaders } from '@angular/common/http';

import { NotificationService } from '../notification/notification.service';
import { UserInterface } from 'src/app/models';

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

  constructor(
    private httpClient: HttpClient,
    private router: Router,
    private notificationService: NotificationService,
  ) { }


  registerUser(registerForm: NgForm){
    console.log(registerForm.value)
      if( registerForm.value.email && registerForm.value.userName 
          && registerForm.value.firstName && registerForm.value.lastName 
          && registerForm.value.password && registerForm.value.confirmPassword
           ){

            if( registerForm.value.password === registerForm.value.confirmPassword ){

                this.httpClient.post(window.location.protocol + '//' + window.location.hostname + ':3000/register', registerForm.value)
                .toPromise()
                .then(
                  (res) => { 
                    this.authenticateUser(registerForm.value); 
                  }
                ) .catch((err) => { console.log(err); this.notificationService.addNotification(err); })

            } else { this.notificationService.addNotification('Password\'s Do Not Match'); }

      } else { this.notificationService.addNotification('Fill In All Fields'); }
  }

  loginUser(loginForm: NgForm) {
    if( loginForm.value.email && loginForm.value.password) {
      this.authenticateUser(loginForm.value);
    } else {
      this.notificationService.addNotification("Fill In All Field\'s");
    }
  }

  authenticateUser(loginData) {
    console.log.arguments(loginData);
    this.httpClient.post(window.location.protocol + "//" + window.location.hostname + ":3000/login", loginData)
      .toPromise()
      .then(
        (res: UserInterface) => { 
          localStorage.setItem('token', res.token);
          this.notificationService.addNotification('Login Successful');
          this.router.navigate((['/dashboard'])); 
        }
      )
      .catch((err) => { this.notificationService.addNotification(err); console.log(err);})
  }

  isLoggedIn() {

  }

} ```

Just trying to run this function in the resolution of this promise.


Svar #1

Det finns ett fel eller skrivfel console.log.arguments(loginData) som borde vara console.log(loginData)

Felet säger att arguments-egenskapen är förbjuden i strikt läge. Och Typescript kompilerar alltid till Javascript i strikt läge.

Relaterade artiklar