数据未进入“角度材质”对话框

我有一个简单的“角度材质”对话框,该对话框应该显示有关某个人的一些数据。我正在显示的人员对象如下:

export interface Person {
   prsName: string;
   prsAddress: string;
   prsCity: string;
   prsState: string;
}

对话框的Typescript代码如下:

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

  constructor(public dialogRef: MatDialogRef<PersonDialogComponent>,
          @Inject(MAT_DIALOG_DATA) public theInfo: Person) {
             alert('Name: '+theInfo.prsName); /*  temporary call to check the contents of theInfo */
          }

  onClose(): void {
    this.dialogRef.close();
 }

从我的主要组件调用的打开对话框的功能如下:

  public getPerson(aName: string) {
     const found = this.persGetter.findPerson(aName);

     found.subscribe(info => {
       alert('Person Name: ' + info.prsName + ' Address: ' + info.prsAddress); /* Temporary. This just shows that info has real data! */
       const ref = this.theDlg.open(PersonDialogComponent, {
         width: '300px',
         data: { theInfo: info }
       });
     });
   }

请注意,persGetter是一个HttpClient对象,该对象从我的服务器获取Person信息。

对话框的HTML如下:

<h1 mat-dialog-title>Person: {{ theInfo.prsName }}</h1>

<div mat-dialog-actions>
    <button mat-button (click)="onClose()">Close</button>
</div>

该对话框在调用getPerson()函数时显示,但是由于某种原因,在警报显示信息内容的时间与实际创建对话框之间,prsName属性变为未定义!

显然我缺少了一些东西。谁能告诉我如何将我的“个人”信息成功传递到此对话框中?