在角度4 app中键入Error

时间:2018-02-15 15:10:43

标签: angular typescript http

无法收到错误消息,请帮帮我。 我正在使用angular 4开发仪表板。下面是用户类 as,

export class User{
    constructor(private _userName? : string, private _passWord? : string){
        this._userName = _userName;
        this._passWord = _passWord;
        console.log('User object created');    
    }

    public getUserName():string {
        return this._userName;
    }

    public getPassword(): string{
        return this._passWord;
    }

    public setUserName(userName: string): void{
        this._userName = userName;
    }

    public setPassword(password: string): void{
        this._passWord = password;
    }
}

我写了一个http服务如下,

import { Injectable } from '@angular/core';

import { User } from '../app/Models/user';
import { Http, Response } from '@angular/http';
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs/Observable';

@Injectable()
export class AdminUserService {

  private base_url: string = "http://localhost:9090";

  constructor( private http: Http) { 
  }

  postAdminUsertoDashboard( user: User){
    let dashboard_login: string ="/xyz/dashboard-login/login";
    let body = "userName=" + user.getUserName + "&password=" + user.getPassword;
    this.http.post(this.base_url,body).subscribe((data)=>console.log(data));

  }

} 

我正在登录页面中调用我的服务,如下所示,

let user  = new User();
user.setPassword(this.password);
user.setUserName(this.userName);
console.log(this.userName);
console.log(this.password);
this.adminUserService.postAdminUsertoDashboard(user);

但是当我运行应用程序时,我收到以下错误,即使服务器并行运行,错误如下,

**> __zone_symbol__currentTask: Object { runCount: 0, _state: "notScheduled", type: "microTask", … } columnNumber: 17 fileName:
> "http://localhost:4200/main.bundle.js line 593 > eval" lineNumber: 48
> message: "_this.adminUserService is undefined" stack:
> "LoginComponent.prototype.userLogin/<@webpack-internal:///../../../../../src/pages/login/login.ts:48:17\nZoneDelegate.prototype.invoke@webpack-internal:///../../../../zone.js/dist/zone.js:392:17\nonInvoke@webpack-internal:///../../../core/esm5/core.js:4950:24\nZoneDelegate.prototype.invoke@webpack-internal:///../../../../zone.js/dist/zone.js:391:17\nZone.prototype.run@webpack-internal:///../../../../zone.js/dist/zone.js:142:24\nscheduleResolveOrReject/<@webpack-internal:///../../../../zone.js/dist/zone.js:873:52\nZoneDelegate.prototype.invokeTask@webpack-internal:///../../../../zone.js/dist/zone.js:425:17\nonInvokeTask@webpack-internal:///../../../core/esm5/core.js:4941:24\nZoneDelegate.prototype.invokeTask@webpack-internal:///../../../../zone.js/dist/zone.js:424:17\nZone.prototype.runTask@webpack-internal:///../../../../zone.js/dist/zone.js:192:28\ndrainMicroTaskQueue@webpack-internal:///../../../../zone.js/dist/zone.js:602:25\nZoneTask.invokeTask@webpack-internal:///../../../../zone.js/dist/zone.js:503:21\ninvokeTask@webpack-internal:///../../../../zone.js/dist/zone.js:1540:9\nglobalZoneAwareCallback@webpack-internal:///../../../../zone.js/dist/zone.js:1566:17\n"**

1 个答案:

答案 0 :(得分:1)

您是否已在LoginComponent的构造函数中注入了AdminUserService?

constructor(private adminUserService : AdminUserService){}