You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 5, 2024. It is now read-only.
If you are using md-tabs with ui-router states and rendering your states content outside of the tabs they do not work well together.
It requires custom logic to check the current state on a refresh and change the md-active attribute. This works fine if your tabs just have one state per tab. But if they have child states and you refresh the page the ui-sref's click handler is called and your taken to the parent state.
<md-tabs md-stretch-tabs="always" class="md-accent md-hue-3">
<!-- isActive() checks if the current state includes the given state name. -->
<md-tab label="Tab 1" md-active="isActive('tab1')" ui-sref="app.some.state.tab1"></md-tab>
<md-tab label="Tab 2" md-active="isActive('tab2')" ui-sref="app.some.state.tab2"></md-tab>
<md-tab label="Tab 3" md-active="isActive('tab3')" ui-sref="app.some.state.tab3"></md-tab>
</md-tabs>
<!-- Tab content is rendered here -->
<div ui-view></div>
Now say you went to app.some.state.tab2.someChildState and refreshed. You would load the child state then because md-active always calls the click handlers it will send you to the parent state(app.some.state.tab2).
I'm currently trying to find a good way to fix this. I think making md-active not fire the click handlers and having people use the md-on-select/deselect attributes to register their handlers may work well. But I'll wait for a bit of feedback and see if I come up with anything better(I'm not quite sure if this will break tons of apps, I suspect it won't but still).