我正在 ngHybrid 的幫助下逐個組件地將 AngularJS 應用程式遷移到 Angular。到目前為止它可以作業,但現在我偶然發現了一個奇怪的 AngularJS-Service,它有一個函式,它傳遞了一個 AngularJS-Component-Controller 作為函式引數:
// Service
getDocumentList(requestData, ctrl) {
// edits stuff on ctrl, like adding variables and modifying values
}
// calling component
var ctrl = this;
documentService.getDocumentList(requestData, ctrl);
我知道我知道,我自己永遠不會創建一個通過傳遞的參考修改控制器的服務方法,這是一種可怕的做法,但我只是在遷移它,在重構它之前,我寧愿讓它盡可能少地作業. 我只是不確定 Angular 是否可以傳遞參考,因為我不再有控制器而是類......有沒有辦法讓它作業它我只能重構它以便服務回傳一些東西呼叫組件使用哪個(應該是......)?
uj5u.com熱心網友回復:
在 Angular 組件類中,通常實作控制器功能。所以相同的代碼 - 傳遞this應該有效。但是更改檢測可能會出現問題,尤其是在您使用 onPush 策略時
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/404682.html
標籤:
