簡體   English   中英

Angular:如何直接從服務中操作組件中的@Input /局部變量?

[英]Angular : How to Manipulate an @Input / local variable in component directly from a service?

我想從組件調用的服務中操縱某些局部變量的值。

是的,可以通過訂閱(在組件中)Observable(在使用中)來完成,但是我不想在組件中添加任何內容。

使用angular2從服務更新組件中的變量更改

建議:

component {
     service.subject.subscribe (_=>{--do stuff here --})
} 
Service {
     subject() -- An observable --
}

我希望服務負責設置一些局部變量(在component中)。

像這樣的東西:

服務->調用某個組件的變量並進行設置!

能做到嗎? 如果是,那怎么辦?

使用服務的整個想法是使它們獨立且可重用。 因此,您擁有通過服務來修改組件屬性的想法會在服務和組件之間引入緊密的聯系。

如果仍要執行此操作,則在此服務上創建一個setter並從您的組件中調用它,將引用傳遞給組件實例,例如

myService.setComponent(this);

然后,您將能夠從服務中修改組件的屬性。 但是同樣,我不建議您選擇這條路線。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM