Angular 角度:Mat扩展面板未显示所有字段

Angular 角度:Mat扩展面板未显示所有字段,angular,angular-material,Angular,Angular Material,我正在使用angular 8开发一个应用程序,我想创建一个表单,其中包含用户输入的选项,通过单击按钮,它应该显示创建的表单或表格。我想表单可以创建,没有任何问题,但它不会显示所有字段。我做错了什么?我尝试了很多场景,比如更改html表单,但没有一个是有用的。它只打印第三个字段,即“描述”字段。所有其他字段正在转义或未注册。任何人都可以发现问题 这是exercise-list.component.html文件: {{element.workoutTitle} {{element.name} {{

我正在使用angular 8开发一个应用程序,我想创建一个表单,其中包含用户输入的选项,通过单击按钮,它应该显示创建的表单或表格。我想表单可以创建,没有任何问题,但它不会显示所有字段。我做错了什么?我尝试了很多场景,比如更改html表单,但没有一个是有用的。它只打印第三个字段,即“描述”字段。所有其他字段正在转义或未注册。任何人都可以发现问题

这是exercise-list.component.html文件:


{{element.workoutTitle}
{{element.name}

{{element.description}

{{element.nrSets}

{{element.nRepstime}

编辑 删除

尚未添加任何练习

这是exercise-create.component.html文件:


要求的
运动
要求的
描述
必修的。
设置
要求的
重复/次
要求的

节省训练
这是练习-list.component.ts

从'@angular/core'导入{Component,OnInit,Input,OnDestroy};
从“../../models/Exercise model”导入{Exercise};
从“../../services/exercise.service”导入{ExerciseService};
从“rxjs”导入{Subscription};
@组成部分({
选择器:“应用程序练习列表”,
templateUrl:'./exercise list.component.html',
样式URL:['./练习列表.component.css']
})
导出类ExerciseListComponent实现OnInit、OnDestroy{
练习:练习[]=[];
私人行权分:认购;
建造商(公共健身服务:健身服务){
}
恩戈尼尼特(){
this.exercises=this.exerciseService.getExercises();
this.exerciseSub=this.exerciseService.getPostUpdateListener()
.订阅((练习:练习[])=>{
这个。练习=练习;
});
}
恩贡德斯特罗(){
此.exerciseSub.unsubscribe();
}
}
这是练习-create.component.ts

从'@angular/core'导入{Component,OnInit,EventEmitter,Output};
从'@angular/forms'导入{NgForm};
从“../../models/Exercise model”导入{Exercise};
从'src/app/services/exercise.service'导入{ExerciseService};
@组成部分({
选择器:“应用程序练习创建”,
templateUrl:“./exercise create.component.html”,
样式URL:['./练习create.component.css']
})
导出类ExerciseCreateComponent实现OnInit{
建造商(公共健身服务:健身服务){
}
onAddExercise(格式:NgForm){
if(form.invalid){return;}
此.exerciseService.addExercise(
form.value.workoutTitle,
form.value.name,
形式、价值、描述,
form.value.nrSets,
表.值.nRepstime);
resetForm();
}
ngOnInit(){}
}
这是exerciseService.ts文件:

从'@angular/core'导入{Injectable};
从“../models/Exercise model”导入{Exercise};
从'rxjs'导入{Subject};
@可注射({providedIn:'root'})
出口类健身服务{
私人演习:演习[]=[];
private exercisesUpdatd=新科目();
getExercises(){
返回[…这个练习];
}
getPostUpdateListener(){
返回此.exercisesUpdatd.asObservable();
}
addExercise(workoutTitle:string,exerciseName:string,description:string,set:number,repsTime:string){
常量练习:练习={
workoutTitle:workoutTitle,
姓名:exerciseName,
描述:描述,
nrSets:set,
nRepstime:repsTime
};
这个。练习。推(练习);
这个练习支持下一个([…这个练习]);
}
}
exercise.model.ts文件:

导出接口练习{
修井口:管柱;
名称:字符串;
描述:字符串;
nrSets:数量;
nRepstime:字符串;
}
这是视觉上的结果。可以看到,所有字段都输入了数据,但只显示描述。


这里是stackBlitz的链接:

你能在
练习列表.component.ts的
ngOnInit
中打印
练习吗?我使用了虚拟数据,它工作正常。所以是的,我认为它应该有效。我只是想知道这个
练习的元素是否具有所需的所有字段。我尝试了不同的方法,但找不到错误所在。你将代码和示例数据一起放入stackblitz?