Tôi cần một số làm rõ về ràng buộc giữa dịch vụ và thành phần thuộc tính và dữ liệu ràng buộc trong angular2dữ liệu angular2 ràng buộc giữa dịch vụ và thành phần thuộc tính
giả tôi có một dịch vụ (singleton) và một thành phần
export class Service {
name = "Luke";
object = {id:1};
getName(){return this.name};
getObject(){return this.object};
}
export class Component implements OnInit{
name:string;
object:any;
constructor(private _service:Service){}
ngOnInit():any{
//Is this 2 way binding?
this.name = this._service.name;
this.object = this._service.object;
//Is this copying?
this.name = this._service.getName();
this.object = this._service.getObject();
}
}
tôi thấy, bởi vì trong trường hợp đầu tiên ive tạo ra hai tài liệu tham khảo chỉ về phía cùng một đối tượng, trong khi dưới đây tôi sẽ net để "sao chép" tài sản một lần nữa? –
nhưng chờ đợi, có nghĩa là nếu tôi có một kiểu dữ liệu tham chiếu trong một dịch vụ Singleton, và tạo tham chiếu mới trỏ về phía nó trong các thành phần khác nhau, chế độ xem sẽ tự động cập nhật mỗi khi tôi thay đổi nó ?? –
@HanChe, vâng, các chế độ xem sẽ tự động cập nhật vì tất cả các liên kết mẫu của bạn đều bị ràng buộc vào cùng một đối tượng.Tất cả các thành phần của bạn đều có tham chiếu riêng, nhưng tất cả đều trỏ tới cùng một dịch vụ Singleton, và sau đó tất cả các ràng buộc mẫu có tham chiếu riêng của chúng, nhưng tất cả đều trỏ đến cùng một đối tượng trong Singleton đó. Vì vậy, nó tất cả các công trình. –