Lazy singleton instance. Use this to access the functionality in a browser, to avoid multiple event listeners in the DOM.
To be called when the hash fragment in the browser URL changes. (This is automatically set up in UrlFragment)
Setting a value in the hash fragment does not emit a corresponding value in the Observable from the
{@link UrlFragment#watch} methods. This is deliberate, to prevent accidental feedback loops, and to avoid that
the hash fragment is used as a component-to-component communications channel.
It is best to think of the URL fragment as a storage which a service/component can use to store and re-establish
its own state, not as a messaging system to other components.
As a (very strong) rule of thumb, a component should not set
anything that it doesn't itself watch
.
Returns an observable which will emit when the given key changes in the URL hash fragment.
A thin layer around the actual functionality in UrlFragmentCore, hooking up the I/O to the browser.