Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度和火基-设置接触表单_Angular_Typescript_Firebase_Google Cloud Firestore_Angularfire2 - Fatal编程技术网

Angular 角度和火基-设置接触表单

Angular 角度和火基-设置接触表单,angular,typescript,firebase,google-cloud-firestore,angularfire2,Angular,Typescript,Firebase,Google Cloud Firestore,Angularfire2,我对angular和firebase比较陌生,我正试图在我的投资组合网站上建立一个联系方式。不知道如何准确地实现这一点。根据我一直在阅读的一本老指南,我目前已经了解到: app.module.ts import { BrowserModule } from '@angular/platform-browser'; import { NgModule, NO_ERRORS_SCHEMA} from '@angular/core'; import { RouterModule } from '@an

我对angular和firebase比较陌生,我正试图在我的投资组合网站上建立一个联系方式。不知道如何准确地实现这一点。根据我一直在阅读的一本老指南,我目前已经了解到:

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule, NO_ERRORS_SCHEMA} from '@angular/core';
import { RouterModule } from '@angular/router';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { HomeComponent } from './home/home.component';
import { ProjectsComponent } from './projects/projects.component';
import { BlogsComponent } from './blogs/blogs.component';
import { ContactComponent } from './contact/contact.component';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { ResumeComponent } from './resume/resume.component';
import { AngularFireModule } from '@angular/fire';
import { AngularFireDatabaseModule } from '@angular/fire/database';
import { environment } from '../environments/environment';

@NgModule({
  declarations: [
    AppComponent,
    HomeComponent,
    ProjectsComponent,
    BlogsComponent,
    ContactComponent,
    ResumeComponent,
  ],
  imports: [
    BrowserModule,
    AppRoutingModule,
    NgbModule,
    RouterModule,
    AngularFireModule.initializeApp(environment.firebaseConfig),
    AngularFireDatabaseModule 
  ],
  providers: [],
  bootstrap: [AppComponent],
  schemas: [NO_ERRORS_SCHEMA]
})
export class AppModule { }

contact.component.ts

import { Component } from '@angular/core';
import  { FormGroup, FormBuilder, Validators } from  '@angular/forms'; 
import { AngularFirestore } from '@angular/fire/firestore';



@Component({
  selector: 'app-contact',
  templateUrl: './contact.component.html',
  styleUrls: ['./contact.component.css']
})
export class ContactComponent {

  form: FormGroup;
  constructor(private fb: FormBuilder, private af: AngularFirestore) {
    this.createForm();
  }
  createForm() {
    this.form = this.fb.group({
      name: ['', Validators.required],
      email: ['', Validators.required],
      message: ['', Validators.required],
    });
  }
  onSubmit() {
    const {name, email, message} = this.form.value;
    const date = Date();
    const html = `
      <div>From: ${name}</div>
      <div>Email: <a href="mailto:${email}">${email}</a></div>
      <div>Date: ${date}</div>
      <div>Message: ${message}</div>
    `;
    let formRequest = { name, email, message, date, html };
    this.af.list('/messages').set(formRequest);
    this.form.reset();
  }
}
我想不出怎么解决这个问题。 我还对如何设置firebase数据库感到困惑。我是否需要添加收藏,如姓名、电子邮件等?一些起点可能会有所帮助--这是我用来参考的链接:

谢谢

在您的代码中

this.af.list('/messages').set(formRequest);
但是,你应该这样做

this.af.database.list('/messages').set(formRequest);
根据,这是存在的方法。

在您的代码中

this.af.list('/messages').set(formRequest);
但是,你应该这样做

this.af.database.list('/messages').set(formRequest);

根据,这是存在的方法。

问题是否与您正在导入的“angularfirestore”类有关,您提到的指南是否使用问题是否与您正在导入的“angularfirestore”类有关,您提到的指南是否使用