Skip to content

Commit 005c29a

Browse files
Make reactOnRailsPageLoaded async
1 parent c525dac commit 005c29a

File tree

3 files changed

+8
-6
lines changed

3 files changed

+8
-6
lines changed

node_package/src/ReactOnRails.client.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,8 +145,8 @@ ctx.ReactOnRails = {
145145
* More details can be found here:
146146
* https://github.com/shakacode/react_on_rails/blob/master/docs/additional-reading/turbolinks.md
147147
*/
148-
reactOnRailsPageLoaded(): void {
149-
ClientStartup.reactOnRailsPageLoaded();
148+
reactOnRailsPageLoaded() {
149+
return ClientStartup.reactOnRailsPageLoaded();
150150
},
151151

152152
reactOnRailsComponentLoaded(domId: string): void {

node_package/src/clientStartup.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,12 @@ import {
99
import { onPageLoaded, onPageUnloaded } from './pageLifecycle';
1010
import { debugTurbolinks } from './turbolinksUtils';
1111

12-
export function reactOnRailsPageLoaded(): void {
12+
export async function reactOnRailsPageLoaded() {
1313
debugTurbolinks('reactOnRailsPageLoaded');
14-
hydrateAllStores();
15-
renderOrHydrateAllComponents();
14+
await Promise.all([
15+
hydrateAllStores(),
16+
renderOrHydrateAllComponents(),
17+
]);
1618
}
1719

1820
function reactOnRailsPageUnloaded(): void {

node_package/src/types/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ export interface ReactOnRails {
173173
getOrWaitForStoreGenerator(name: string): Promise<StoreGenerator>;
174174
setOptions(newOptions: {traceTurbolinks: boolean}): void;
175175
reactHydrateOrRender(domNode: Element, reactElement: ReactElement, hydrate: boolean): RenderReturnType;
176-
reactOnRailsPageLoaded(): void;
176+
reactOnRailsPageLoaded(): Promise<void>;
177177
reactOnRailsComponentLoaded(domId: string): void;
178178
reactOnRailsStoreLoaded(storeName: string): void;
179179
authenticityToken(): string | null;

0 commit comments

Comments
 (0)