Ember.js在运行时获取位置类型

时间:2015-08-13 14:35:26

标签: ember.js browser-history hashtag

如何在EmberJS中获取初始化程序中的位置类型?   我们假设我将config中的locationType设置为auto。我想知道,当应用程序运行时,在初始化程序中,无论是使用哈希还是使用历史记录。

我可以这样做吗?   谢谢。

1 个答案:

答案 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.
}