18 lines
492 B
TypeScript
18 lines
492 B
TypeScript
|
import {UIEventSource} from "../UIEventSource";
|
||
|
|
||
|
export default class Hash {
|
||
|
|
||
|
public static Get() : UIEventSource<string>{
|
||
|
const hash = new UIEventSource<string>(window.location.hash.substr(1));
|
||
|
hash.addCallback(h => {
|
||
|
h = h.replace(/\//g, "_");
|
||
|
return window.location.hash = "#" + h;
|
||
|
});
|
||
|
window.onhashchange = () => {
|
||
|
hash.setData(window.location.hash.substr(1))
|
||
|
}
|
||
|
|
||
|
return hash;
|
||
|
}
|
||
|
|
||
|
}
|