$rootScope.$on('$locationChangeStart',
function (event, next, current) {
historyArray.push($location.path());
console.log("history", historyArray);
});
在开头它看起来没问题,我的意思是[“/ page1”,“/ page2”],但随后它开始将“ChangeStart”效果乘以ie [“/ page1”,“/ page2”,“/ page3“,”/ page3“,”/ page4“,”/ page4“,”/ page4“]等。
任何想法如何预防?
修改。这只是一个例子,我需要$ locationChangeStart用于一些ngDialog模态和其他复杂的东西,但我面临着类似的缝合(比如同时打开5个模态)
答案 0 :(得分:0)
您可以添加条件以检查位置是否实际更改,并添加indexOf以确保页面中不存在该页面。
$rootScope.$on('$locationChangeStart',
function (event, next, current) {
if(next !== current && historyArray.indexOf(current) === -1) {
historyArray.push($location.path());
}
}
);