Angular 在角形区域中使用mat form字段时,启动屏幕将挂起

Angular 在角形区域中使用mat form字段时,启动屏幕将挂起,angular,typescript,splash-screen,Angular,Typescript,Splash Screen,我正在创建一个使用闪屏的应用程序。在我将mat表单字段元素添加到登录页之前,一切都正常工作。然后闪屏显示出来,永远不会消失 这是虫子还是别的什么?我怎样才能避免这种情况 您可以在下面找到代码 我的闪屏实现: splash-screen-component.ts import { Component, OnInit } from '@angular/core'; @Component({ selector: 'splash-screen', templateUrl: './splash-

我正在创建一个使用闪屏的应用程序。在我将mat表单字段元素添加到登录页之前,一切都正常工作。然后闪屏显示出来,永远不会消失

这是虫子还是别的什么?我怎样才能避免这种情况

您可以在下面找到代码

我的闪屏实现:

splash-screen-component.ts

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'splash-screen',
  templateUrl: './splash-screen.component.html',
  styleUrls: ['./splash-screen.component.css'],
})
export class SplashScreenComponent implements OnInit {
  windowWidth: string;
  //showSplash = true;
  showSplash = false;

  ngOnInit(): void {
    setTimeout(() => {
      this.windowWidth = '-' + window.innerWidth + 'px';

      setTimeout(() => {
        this.showSplash = !this.showSplash;
      }, 500);
    }, 3000);
  }
}
import { Component, OnInit } from '@angular/core';
import { FormControl } from '@angular/forms';
import { MatAutocomplete } from '@angular/material/autocomplete';
@Component({
  selector: 'app-landing-page',
  templateUrl: './landing-page.component.html',
  styleUrls: ['./landing-page.component.css'],
})
export class LandingPageComponent implements OnInit {
  title = 'materialApp';
  myControl = new FormControl();
  niilo = 'Niilo Salminen';
  elli = 'Elli Saartamo';
  mari = 'Mari Paananen';
  UXDesigner = 'UX Designer';
  RDEngineer = 'R&D Engineer';
  industrialDesigner = 'Industrial Designer';

  names = [
    [0, this.niilo, this.UXDesigner],
    [1, this.elli, this.RDEngineer],
    [2, this.mari, this.industrialDesigner],
  ];
  constructor() {}

  ngOnInit(): void {}
}
splash-screen.component.html

<div
  class="app-splash-screen"
  [ngStyle]="{ left: windowWidth }"
  *ngIf="showSplash"
>
  <div class="app-splash-inner">
    <div class="app-logo"></div>
    <div class="app-label">LINK easy</div>
    <div class="app-loader"></div>
  </div>
</div>
<div class="main-container">
  <div class="flex-container">
    <!--   <h1 class="header">Mitä tarvitset?</h1> -->

    <mat-card>
      <button
        mat-button
        class="button buttonContent"
        mat-button
        routerLink="/projects"
      >
        <span class="buttonText">PROJEKTIT</span>
      </button>

      <button
        mat-button
        class="button buttonContent"
        mat-button
        routerLink="/experts"
      >
        <span class="buttonText">ASIANTUNTIJAT</span>
      </button>

      <button
        mat-button
        class="button buttonContent"
        mat-button
        routerLink="/landing"
      >
        <span class="buttonText">TARJOUSPYYNTÖ</span>
      </button>

      <button
        mat-button
        class="button buttonContent"
        mat-button
        routerLink="/contact"
      >
        <span class="buttonText">YHTEYDENOTTO</span>
      </button>

      <button
        mat-button
        class="button buttonContent"
        mat-button
        routerLink="/landing"
      >
        <span class="buttonText">REFERENSSIT</span>
      </button>
      <form class="tp-form">
        <mat-form-field class="tp-full-width">
          <input
            type="text"
            placeholder="Hae tästä"
            aria-label="Number"
            matInput
            [formControl]="myControl"
            [matAutocomplete]="auto"
          />
          <mat-autocomplete #auto="matAutocomplete">
            <mat-option
              [routerLink]="['/expert-details']"
              [state]="{ id: name[0], name: name }"
              *ngFor="let name of names"
              [value]="name[0]"
            >
              {{ name[1] }}
            </mat-option>
            <mat-option
              [routerLink]="['/expert-details']"
              [state]="{ id: name[0], name: name }"
              *ngFor="let name of names"
              [value]="name[0]"
            >
              {{ name[2] }}
            </mat-option>
          </mat-autocomplete>
        </mat-form-field>
      </form>
    </mat-card>
  </div>
</div>

解决了。我试图将未定义的赋值给[值]。

已解决。我试图将未定义的赋值给[value]。

它会在控制台中引发任何异常吗?这可能会给我们一些线索,例如,可能您没有导入MatFormFieldModule?这是我得到的:core.js:6272错误:mat form字段必须包含MatFormFieldControl。它是否在控制台中引发任何异常?这可能会给我们一些线索,例如,可能您没有导入MatFormFieldModule?这是我得到的:core.js:6272错误:mat表单字段必须包含MatFormFieldControl。