Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
Javascript 无法从日期范围为的Firestore获取数据_Javascript_Angular_Google Cloud Firestore_Angularfire2 - Fatal编程技术网

Javascript 无法从日期范围为的Firestore获取数据

Javascript 无法从日期范围为的Firestore获取数据,javascript,angular,google-cloud-firestore,angularfire2,Javascript,Angular,Google Cloud Firestore,Angularfire2,我有这样的Firebase系列: 我正在尝试使用以下代码获取具有日期范围条件的数据: ticket form.html.ts <form [formGroup]="form2" #fd2="ngForm" class="form" (submit)="onSubmmitDates(form2.value, fd2)"> <div class="fo

我有这样的Firebase系列:

我正在尝试使用以下代码获取具有日期范围条件的数据:

ticket form.html.ts

<form
    [formGroup]="form2"
    #fd2="ngForm"
    class="form"
    (submit)="onSubmmitDates(form2.value, fd2)">
    <div class="form__article">
      <h3>Ticket Data</h3>

      <div class="mdl-grid">
        <div class="mdl-cell mdl-cell--6-col mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
          <input
            class="mdl-textfield__input"
            type="date"
            id="dateFrom"
            formControlName="dateFrom"
          />
          <label class="mdl-textfield__label" for="dateFrom">Date From</label>
        </div>

        <div class="mdl-cell mdl-cell--6-col mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
          <input
            class="mdl-textfield__input"
            type="date"
            id="dateTo"
            formControlName="dateTo"
          />
          <label class="mdl-textfield__label" for="dateTo">Date To</label>
        </div>
      </div>

    </div>

    <div class="form__action">
        <div class="mdl-layout-spacer"></div>
      <button
        id="submit_button"
        class="mdl-button mdl-js-button mdl-button--raised mdl-button--colored">
        Submit
      </button>
    </div>
  </form>
onSubmmitDates(value: any) {
    this.ts.getSpecificTicket(value.dateFrom, value.dateTo).subscribe(
      res => {
        this.ticketsList = res.map(item => {
          return {
            ...item.payload.doc.data(),
          };
        });
        console.log(this.ticketsList);
      }
    );
    // const x = this.ts.getSpecificTicket(value.dateFrom, value.dateTo);
}

onGetAll() {
    this.ts.getAll().subscribe(
      res => {
        this.ticketsList = res.map(item => {
          return {
            ...item.payload.doc.data(),
          };
        });
      }
    );
  }
private ticketList: AngularFireList<any>;

constructor(
    private firestore: AngularFirestore,
    private afDatabase: AngularFireDatabase,
) { }

// Parameters is from the 2 date pickers in the html
getSpecificTicket(dateFrom: Date, dateTo: Date): any {
    let df: any = new Date(dateFrom);
    df = df.getTime();
    let dt: any = new Date(dateTo);
    dt = dt.getTime();
    return this.firestore.collection('/tickets', ref => ref.where('issuedOn', '>', df).where('issuedOn', '<', dt)).snapshotChanges();
}

getAll() {
   return this.firestore.collection('tickets').snapshotChanges();
}
票务服务.ts

<form
    [formGroup]="form2"
    #fd2="ngForm"
    class="form"
    (submit)="onSubmmitDates(form2.value, fd2)">
    <div class="form__article">
      <h3>Ticket Data</h3>

      <div class="mdl-grid">
        <div class="mdl-cell mdl-cell--6-col mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
          <input
            class="mdl-textfield__input"
            type="date"
            id="dateFrom"
            formControlName="dateFrom"
          />
          <label class="mdl-textfield__label" for="dateFrom">Date From</label>
        </div>

        <div class="mdl-cell mdl-cell--6-col mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
          <input
            class="mdl-textfield__input"
            type="date"
            id="dateTo"
            formControlName="dateTo"
          />
          <label class="mdl-textfield__label" for="dateTo">Date To</label>
        </div>
      </div>

    </div>

    <div class="form__action">
        <div class="mdl-layout-spacer"></div>
      <button
        id="submit_button"
        class="mdl-button mdl-js-button mdl-button--raised mdl-button--colored">
        Submit
      </button>
    </div>
  </form>
onSubmmitDates(value: any) {
    this.ts.getSpecificTicket(value.dateFrom, value.dateTo).subscribe(
      res => {
        this.ticketsList = res.map(item => {
          return {
            ...item.payload.doc.data(),
          };
        });
        console.log(this.ticketsList);
      }
    );
    // const x = this.ts.getSpecificTicket(value.dateFrom, value.dateTo);
}

onGetAll() {
    this.ts.getAll().subscribe(
      res => {
        this.ticketsList = res.map(item => {
          return {
            ...item.payload.doc.data(),
          };
        });
      }
    );
  }
private ticketList: AngularFireList<any>;

constructor(
    private firestore: AngularFirestore,
    private afDatabase: AngularFireDatabase,
) { }

// Parameters is from the 2 date pickers in the html
getSpecificTicket(dateFrom: Date, dateTo: Date): any {
    let df: any = new Date(dateFrom);
    df = df.getTime();
    let dt: any = new Date(dateTo);
    dt = dt.getTime();
    return this.firestore.collection('/tickets', ref => ref.where('issuedOn', '>', df).where('issuedOn', '<', dt)).snapshotChanges();
}

getAll() {
   return this.firestore.collection('tickets').snapshotChanges();
}
private ticketList:AngularFireList;
建造师(
私人消防商店:AngularFirestore,
专用afDatabase:AngularFireDatabase,
) { }
//参数来自html中的两个日期选择器
getSpecificTicket(dateFrom:Date,dateTo:Date):任何{
设df:any=新日期(dateFrom);
df=df.getTime();
设dt:any=新日期(dateTo);
dt=dt.getTime();

返回此.firestore.collection('/tickets',ref=>ref.where('issuedOn','>',df)。其中(‘issuedOn’,‘请编辑问题以准确显示您如何调用函数,包括您传递给它的参数的确切值。我们应该能够使用所有已知值跟踪函数的执行情况。@DougStevenson请查看我的编辑。谢谢。我仍然看不到您传递给getSpecificTi的日期cket。一切仍然只是变量。据我所知,您传递的日期无效,或与任何文档不匹配的日期。请帮助我们了解您传递的内容,以及为什么您应该在结果中接收任何文档。@DougStevenson请查看我的编辑。希望这能说明问题。谢谢。您希望返回哪些文档ned使用那个日期范围?你试过其他日期范围吗?