我有一個聲明變量的服務(wù)。在我的組件中,我使用此變量將數(shù)據(jù)放入其中。服務(wù):@Injectable()export class DataService { public msgs = []; constructor() { } }現(xiàn)在,我在組件中使用此變量:export class MessagesComponent implements OnInit { constructor(private dataService: DataService){} ngOnInit() { this.getData(); } getData(){ let msgs = []; if (diffr <= this.geomessage[i].range) { this.geomessage[i].dist = diffr; msgs.push(this.geomessage[i]); //console.log("this message: ", this.geomessage[i]); //DEBUG } this.dataService.msgs = msgs; } } 我只張貼了必要的代碼this.dataService.msgs。當(dāng)我到達(dá)另一個組件時,this.dataService.msgs的數(shù)據(jù)仍然存在,但是當(dāng)我回到原來Messagescomponent的this.dataService.msgs位置,undefined直到我再次填充它,但我需要其中的數(shù)據(jù)。有人知道該怎么做嗎?謝謝
2 回答

素胚勾勒不出你
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個贊
關(guān)于echonax答復(fù)的簡短說明是,提供者是按層次結(jié)構(gòu)工作的。如果將其添加到應(yīng)用程序模塊中,它將在整個應(yīng)用程序中正常工作,因此不應(yīng)在其他任何地方“提供”它。但是,如果不需要“全局”服務(wù),則只需在父組件上提供即可。
- 2 回答
- 0 關(guān)注
- 719 瀏覽
添加回答
舉報
0/150
提交
取消