Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.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
Arrays 为什么我的*用于显示两个空项目_Arrays_Angular - Fatal编程技术网

Arrays 为什么我的*用于显示两个空项目

Arrays 为什么我的*用于显示两个空项目,arrays,angular,Arrays,Angular,我有一个获取我所有学生数据的getter服务。如果我添加了一个student并使用subscribe来表示我的student数组已更改,那么它可以工作,但是我将如何在get方法上实现这一点 我是新来的,所以任何帮助都会很好 {{student.studentname} {{学生。学生姓氏} {{student.studentnumber} 从'@angular/core'导入{Component,OnInit,AfterViewInit,Input}; 从“../student.se

我有一个获取我所有学生数据的getter服务。如果我添加了一个student并使用subscribe来表示我的student数组已更改,那么它可以工作,但是我将如何在get方法上实现这一点

我是新来的,所以任何帮助都会很好



  • {{student.studentname} {{学生。学生姓氏} {{student.studentnumber}
  • 从'@angular/core'导入{Component,OnInit,AfterViewInit,Input};
    从“../student.service”导入{StudentService};
    从“../Student.model”导入{Student};
    从'@angular/core'导入{Component,OnInit,AfterViewInit,AfterViewChecked,Input,OnChanges};
    从“../student.service”导入{StudentService};
    从“../Student.model”导入{Student};
    从“rxjs”导入{Subscription};
    @组成部分({
    选择器:'应用程序所有学生',
    templateUrl:“./all student.component.html”,
    styleURL:['./所有student.component.css']
    })
    导出类AllStudentsComponent实现OnInit,AfterViewInit{
    构造函数(私有studentService:studentService){}
    学生分:订阅;
    学生:学生[]=[];
    ngOnInit():void{
    this.students=this.studentService.getStudents();
    this.studentService.studentChanged.next(this.students)
    this.studentSub=this.studentService.studentChanged.subscribe(
    (学生:学生[])=>{
    this.students=this.studentService.getStudents();
    }
    )
    }
    ngAfterViewInit(){
    }
    }
    
    从'@angular/core'导入{Injectable};
    从“/Student.model”导入{Student};
    从'rxjs'导入{Subject};
    @注射的({
    providedIn:'根'
    })
    出口班学生服务{
    私立学生:学生[]=[
    新生('Bernhardt','du Toit',17001847年),
    新生(“Chane”,“van der Merwe”,17001848年)
    ];
    studentChanged=新科目()
    getStudent(索引:编号){
    返回这个。学生[索引];
    }
    getStudents(){
    返回这个.students.slice();
    }
    addStudent(学生:学生){
    这个。学生。推(学生);
    this.studentChanged.next(this.students.slice())
    }
    添加学生(学生:学生[]){
    这个。学生。推(…学生);
    this.studentChanged.next(this.students.slice())
    }
    }
    
    附件是我的html文件,我的ts文件和我的服务


    再次感谢您的帮助

    您需要更改名称以匹配学生班级的名称

    div class="row">
      <div class="col-xs-12">
        <div *ngIf="students">
          <ul *ngFor="let student of students" class="list-group">
            <li class="list-group-item">
              <h3>{{ student.stname}}</h3>
              <h3>{{ student.stsurname }}</h3>
              <h3>{{ student.stnumber}}</h3>
            </li>
          </ul>
        </div>
      </div>
    </div>
    
    div class=“行”>
    
    
  • {{student.stname} {{student.stname} {{student.stnumber}

  • 你的
    student.model
    长什么样?导出类学生{public stname:string;public stname:string;public stnumber:number;构造函数(stname:string,stname:string,stnumber:number){this.stname=stname;this.stname=stname;this.stnumber=stnumber;}看起来你想在屏幕上显示“student.studentname”,但是你的数据模型定义“student.stname”在这个上下文中“student.studentname”是未定义的,然后没有显示任何内容编辑修复了它谢谢Mathieu Berthellemy我想得太多了,我甚至没有想到这一点。