Constructor là phương pháp mặc định được xác định trước của lớp nguyên cảo. Không có mối quan hệ nào giữa Angular và constructor
. Thông thường, chúng tôi sử dụng constructor
để xác định/khởi tạo một số biến, nhưng khi chúng tôi có các nhiệm vụ liên quan đến các ràng buộc của Angular, chúng tôi chuyển sang móc vòng đời ngOnInit
của Angular. ngOnInit
được gọi ngay sau lệnh gọi hàm tạo. Chúng ta cũng có thể làm công việc tương tự trong hàm tạo nhưng thích hợp hơn để sử dụng ngOnInit
để bắt đầu ràng buộc của Angular.
để sử dụng ngOnInit
chúng ta phải nhập khẩu móc này từ thư viện lõi:
import {Component, OnInit} from '@angular/core'
Sau đó, chúng tôi thực hiện giao diện này với lớp xuất khẩu (điều này là không bắt buộc phải thực hiện giao diện này nhưng nhìn chung chúng tôi đã làm).
Ví dụ về sử dụng cả hai:
export class App implements OnInit{
constructor(){
//called first time before the ngOnInit()
}
ngOnInit(){
//called after the constructor and called after the first ngOnChanges()
}
}
Để cụ thể hơn xem thêm Difference between Constructor and ngOnInit
Nguồn
2016-03-07 14:31:02
Nhưng bạn không trả lời câu hỏi thực tế. cái nào chúng ta nên sử dụng trong trường hợp này ..? –
ngOnInit không được gọi ngay sau khi gọi hàm tạo, giữa chúng có ngOnChanges: https://angular.io/guide/lifecycle-hooks – Hazlo8