【问题标题】:ERROR Error: "[object Object]" in Angular 7错误错误:Angular 7中的“[object Object]”
【发布时间】:2019-10-03 18:32:48
【问题描述】:

我正在尝试通过 Angular 7 将数据发布到 API,但在单击注册时出现以下错误。

这是我的 app.module.ts 文件

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { AppComponent } from './app.component';

// Component
import { LoginComponent} from './Login/login.component';
import { RegComponent } from './Reg/reg.component';
import { HeaderComponent } from './header/header.component';


// Material Component
import { HttpModule } from '@angular/http'; //NEW
import {BrowserAnimationsModule} from '@angular/platform- 
browser/animations';
import {MatInputModule, MatOptionModule, MatSelectModule, 
MatIconModule} from '@angular/material';
import {MatToolbarModule} from '@angular/material/toolbar';
import {MatTabsModule} from '@angular/material/tabs';
import {MatDividerModule} from '@angular/material/divider';
import {MatButtonModule} from '@angular/material/button';
// services  
import { UserService } from './services/reg.service';



@NgModule({
declarations: [
AppComponent,
LoginComponent,
RegComponent,
HeaderComponent
],
imports: [
HttpModule,
BrowserModule,
FormsModule,
AppRoutingModule,
BrowserAnimationsModule,
ReactiveFormsModule,
MatInputModule, MatOptionModule, MatSelectModule, MatIconModule, 
MatTabsModule, MatToolbarModule, MatDividerModule,
MatButtonModule, MatSelectModule
],
providers: [UserService],
bootstrap: [AppComponent]
})
export class AppModule { }

这是我的注册服务文件 reg.service.ts

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';



@Injectable()
export class UserService {
 constructor(private http: HttpClient) { }


create(userdata: any): Observable<Object> {
    return this.http.post('/api/users', userdata);
   }


}

以下是我的 reg.component.ts 组件文件

import { Component } from '@angular/core';
import { UserService } from '../services/reg.service';
import { VERSION } from '@angular/core';
@Component({

// selector: '<app-reg>',
templateUrl: 'reg.component.html'
 })
export class RegComponent {



constructor(

    private userService: UserService,
    ) { }

register(event: any) {

    this.userService.create(event.target.username.value)
        .subscribe(
            data => {

                console.log('success');

            },
            error => {
                console.log('Error');
            });
    }
}

请提供一些解决方案。

https://github.com/akshay-champavat/angular

这是我的仓库链接,你可以在这里查看整个代码。

【问题讨论】:

  • 尝试用 chrome 浏览器打开你的 Angular 项目,Angular 异常用它更明确。您也许能够发现错误。

标签: javascript angular npm angular7


【解决方案1】:

在你的 app.module 中改变这个:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { AppComponent } from './app.component';

// Component
import { LoginComponent} from './Login/login.component';
import { RegComponent } from './Reg/reg.component';
import { HeaderComponent } from './header/header.component';


// Material Component
import { HttpModule } from '@angular/http'; //NEW
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {MatInputModule, MatOptionModule, MatSelectModule, MatIconModule} from '@angular/material';
import {MatToolbarModule} from '@angular/material/toolbar';
import {MatTabsModule} from '@angular/material/tabs';
import {MatDividerModule} from '@angular/material/divider';
import {MatButtonModule} from '@angular/material/button';
// services
import { UserService } from './services/reg.service';
import { HttpClientModule } from '@angular/common/http';



@NgModule({
  declarations: [
    AppComponent,
    LoginComponent,
    RegComponent,
    HeaderComponent
  ],
  imports: [
    HttpClientModule,
    BrowserModule,
    FormsModule,
    AppRoutingModule,
    BrowserAnimationsModule,
    ReactiveFormsModule,
    MatInputModule, MatOptionModule, MatSelectModule, MatIconModule, MatTabsModule, MatToolbarModule, MatDividerModule,
    MatButtonModule, MatSelectModule
  ],
  providers: [UserService],
  bootstrap: [AppComponent]
})
export class AppModule { }

更改 HttpModuleHttpClientModule

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-29
    • 1970-01-01
    • 2020-08-30
    • 1970-01-01
    • 1970-01-01
    • 2020-10-24
    • 2019-10-27
    相关资源
    最近更新 更多