首页 > 解决方案 > 初始化 Angular 组件上的变量

问题描述

在 Angular 7 组件上,我有以下内容:

export class PostListComponent implements OnInit {

  posts: PostModel[] = [];

  constructor(private postService: PostService) { }

  ngOnInit() {

    this.posts = this.getPosts();

  }

  getPosts(): PostModel[] {

    let posts: PostModel[] = [];

    posts = postService.getTopPosts();

    return posts;

  }

}

我应该在 getPosts() 方法中设置 this.posts 吗?

或者我应该像我一样返回帖子并在 ngOnInit 中设置 this.posts 吗?

有没有更好的方法来初始化 Angular 组件上的变量?

标签: angularangular6angular-componentsangular7

解决方案


这样看起来更好:

export class PostListComponent implements OnInit {

  posts: PostModel[] = [];

  constructor(private postService: PostService) { }

  ngOnInit() {
    this.posts = this.getPosts();
  }

  getPosts(): PostModel[] {
    return this.postService.getTopPosts();
  }

}

我个人也这样做了,在一个大项目中,当你有数千行时,它有助于清理正在发生的事情。


推荐阅读