如何在EmberJS中获取初始化程序中的位置类型?
我们假设我将config中的locationType设置为auto
。我想知道,当应用程序运行时,在初始化程序中,无论是使用哈希还是使用历史记录。
我可以这样做吗? 谢谢。
答案 0 :(得分:2)
需要进行一些挖掘,但您可以查找附加到路由器的位置,并将其与相关案例进行比较。
const hashLocation = this.container.lookup('location:hash');
const historyLocation = this.container.lookup('location:history');
const currentLocation = this.container.lookup('router:main').get('location');
if(hashLocation === currentLocation){
// Do thing
}else if(historyLocation === currentLocation) {
// Do other thing
}else{
// Fail whale.
}