mirror of
https://github.com/storybookjs/storybook.git
synced 2025-03-19 05:02:40 +08:00
Merge pull request #2349 from storybooks/1328-fix-hmr-failure
Save the preview frame URL as the story changes.
This commit is contained in:
commit
776f3a6f18
15
app/angular/src/client/preview/init.js
vendored
15
app/angular/src/client/preview/init.js
vendored
@ -1,4 +1,6 @@
|
||||
import keyEvents from '@storybook/ui/dist/libs/key_events';
|
||||
import qs from 'qs';
|
||||
|
||||
import { selectStory } from './actions';
|
||||
|
||||
export default function(context) {
|
||||
@ -8,6 +10,19 @@ export default function(context) {
|
||||
reduxStore.dispatch(selectStory(queryParams.selectedKind, queryParams.selectedStory));
|
||||
}
|
||||
|
||||
// Keep whichever of these are set that we don't override when stories change
|
||||
const originalQueryParams = queryParams;
|
||||
reduxStore.subscribe(() => {
|
||||
const { selectedKind, selectedStory } = reduxStore.getState();
|
||||
|
||||
const queryString = qs.stringify({
|
||||
...originalQueryParams,
|
||||
selectedKind,
|
||||
selectedStory,
|
||||
});
|
||||
window.history.pushState({}, '', `?${queryString}`);
|
||||
});
|
||||
|
||||
// Handle keyEvents and pass them to the parent.
|
||||
window.onkeydown = e => {
|
||||
const parsedEvent = keyEvents(e);
|
||||
|
@ -1,4 +1,6 @@
|
||||
import keyEvents from '@storybook/ui/dist/libs/key_events';
|
||||
import qs from 'qs';
|
||||
|
||||
import { selectStory } from './actions';
|
||||
|
||||
export default function(context) {
|
||||
@ -8,6 +10,19 @@ export default function(context) {
|
||||
reduxStore.dispatch(selectStory(queryParams.selectedKind, queryParams.selectedStory));
|
||||
}
|
||||
|
||||
// Keep whichever of these are set that we don't override when stories change
|
||||
const originalQueryParams = queryParams;
|
||||
reduxStore.subscribe(() => {
|
||||
const { selectedKind, selectedStory } = reduxStore.getState();
|
||||
|
||||
const queryString = qs.stringify({
|
||||
...originalQueryParams,
|
||||
selectedKind,
|
||||
selectedStory,
|
||||
});
|
||||
window.history.pushState({}, '', `?${queryString}`);
|
||||
});
|
||||
|
||||
// Handle keyEvents and pass them to the parent.
|
||||
window.onkeydown = e => {
|
||||
const parsedEvent = keyEvents(e);
|
||||
|
@ -1,4 +1,6 @@
|
||||
import keyEvents from '@storybook/ui/dist/libs/key_events';
|
||||
import qs from 'qs';
|
||||
|
||||
import { selectStory } from './actions';
|
||||
|
||||
export default function(context) {
|
||||
@ -8,6 +10,19 @@ export default function(context) {
|
||||
reduxStore.dispatch(selectStory(queryParams.selectedKind, queryParams.selectedStory));
|
||||
}
|
||||
|
||||
// Keep whichever of these are set that we don't override when stories change
|
||||
const originalQueryParams = queryParams;
|
||||
reduxStore.subscribe(() => {
|
||||
const { selectedKind, selectedStory } = reduxStore.getState();
|
||||
|
||||
const queryString = qs.stringify({
|
||||
...originalQueryParams,
|
||||
selectedKind,
|
||||
selectedStory,
|
||||
});
|
||||
window.history.pushState({}, '', `?${queryString}`);
|
||||
});
|
||||
|
||||
// Handle keyEvents and pass them to the parent.
|
||||
window.onkeydown = e => {
|
||||
const parsedEvent = keyEvents(e);
|
||||
|
Loading…
x
Reference in New Issue
Block a user