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
Copy file name to clipboardExpand all lines: CHANGELOG.md
+54-40Lines changed: 54 additions & 40 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,151 +13,153 @@ We manage release notes in this file instead of the paginated Github Releases Pa
13
13
<summary>Table of Contents</summary>
14
14
15
15
-[Remix Releases](#remix-releases)
16
-
-[v2.16.5](#v2165)
16
+
-[v2.16.6](#v2166)
17
17
-[Patch Changes](#patch-changes)
18
-
-[v2.16.4](#v2164)
18
+
-[v2.16.5](#v2165)
19
19
-[Patch Changes](#patch-changes-1)
20
+
-[v2.16.4](#v2164)
21
+
-[Patch Changes](#patch-changes-2)
20
22
-[v2.16.3](#v2163)
21
23
-[Security Notice](#security-notice)
22
-
-[Patch Changes](#patch-changes-2)
23
-
-[v2.16.2](#v2162)
24
24
-[Patch Changes](#patch-changes-3)
25
-
-[v2.16.1](#v2161)
25
+
-[v2.16.2](#v2162)
26
26
-[Patch Changes](#patch-changes-4)
27
+
-[v2.16.1](#v2161)
28
+
-[Patch Changes](#patch-changes-5)
27
29
-[v2.16.0](#v2160)
28
30
-[Minor Changes](#minor-changes)
29
-
-[Patch Changes](#patch-changes-5)
31
+
-[Patch Changes](#patch-changes-6)
30
32
-[Updated Dependencies](#updated-dependencies)
31
33
-[v2.15.3](#v2153)
32
-
-[Patch Changes](#patch-changes-6)
34
+
-[Patch Changes](#patch-changes-7)
33
35
-[Updated Dependencies](#updated-dependencies-1)
34
36
-[v2.15.2](#v2152)
35
-
-[Patch Changes](#patch-changes-7)
37
+
-[Patch Changes](#patch-changes-8)
36
38
-[Updated Dependencies](#updated-dependencies-2)
37
39
-[v2.15.1](#v2151)
38
-
-[Patch Changes](#patch-changes-8)
39
-
-[v2.15.0](#v2150)
40
40
-[Patch Changes](#patch-changes-9)
41
+
-[v2.15.0](#v2150)
42
+
-[Patch Changes](#patch-changes-10)
41
43
-[v2.14.0](#v2140)
42
44
-[Minor Changes](#minor-changes-1)
43
-
-[Patch Changes](#patch-changes-10)
45
+
-[Patch Changes](#patch-changes-11)
44
46
-[Updated Dependencies](#updated-dependencies-3)
45
47
-[Changes by Package](#changes-by-package)
46
48
-[v2.13.1](#v2131)
47
-
-[Patch Changes](#patch-changes-11)
49
+
-[Patch Changes](#patch-changes-12)
48
50
-[v2.13.0](#v2130)
49
51
-[What's Changed](#whats-changed)
50
52
-[Stabilized APIs](#stabilized-apis)
51
53
-[Minor Changes](#minor-changes-2)
52
-
-[Patch Changes](#patch-changes-12)
54
+
-[Patch Changes](#patch-changes-13)
53
55
-[Updated Dependencies](#updated-dependencies-4)
54
56
-[Changes by Package](#changes-by-package-1)
55
57
-[v2.12.1](#v2121)
56
-
-[Patch Changes](#patch-changes-13)
58
+
-[Patch Changes](#patch-changes-14)
57
59
-[Changes by Package](#changes-by-package-2)
58
60
-[v2.12.0](#v2120)
59
61
-[What's Changed](#whats-changed-1)
60
62
-[Future Flag for Automatic Dependency Optimization (unstable)](#future-flag-for-automatic-dependency-optimization-unstable)
61
63
-[Improved Single Fetch Type Safety (unstable)](#improved-single-fetch-type-safety-unstable)
62
64
-[Updates to Single Fetch Revalidation Behavior (unstable)](#updates-to-single-fetch-revalidation-behavior-unstable)
63
65
-[Minor Changes](#minor-changes-3)
64
-
-[Patch Changes](#patch-changes-14)
66
+
-[Patch Changes](#patch-changes-15)
65
67
-[Updated Dependencies](#updated-dependencies-5)
66
68
-[Changes by Package](#changes-by-package-3)
67
69
-[v2.11.2](#v2112)
68
-
-[Patch Changes](#patch-changes-15)
70
+
-[Patch Changes](#patch-changes-16)
69
71
-[Updated Dependencies](#updated-dependencies-6)
70
72
-[Changes by Package](#changes-by-package-4)
71
73
-[v2.11.1](#v2111)
72
-
-[Patch Changes](#patch-changes-16)
74
+
-[Patch Changes](#patch-changes-17)
73
75
-[Changes by Package](#changes-by-package-5)
74
76
-[v2.11.0](#v2110)
75
77
-[What's Changed](#whats-changed-2)
76
78
-[Renamed `unstable_fogOfWar` future flag to `unstable_lazyRouteDiscovery` (unstable)](#renamed-unstable_fogofwar-future-flag-to-unstable_lazyroutediscovery-unstable)
77
79
-[Removed `response` stub in Single Fetch (unstable)](#removed-response-stub-in-single-fetch-unstable)
78
80
-[Minor Changes](#minor-changes-4)
79
-
-[Patch Changes](#patch-changes-17)
81
+
-[Patch Changes](#patch-changes-18)
80
82
-[Updated Dependencies](#updated-dependencies-7)
81
83
-[Changes by Package](#changes-by-package-6)
82
84
-[v2.10.3](#v2103)
83
-
-[Patch Changes](#patch-changes-18)
85
+
-[Patch Changes](#patch-changes-19)
84
86
-[Updated Dependencies](#updated-dependencies-8)
85
87
-[Changes by Package](#changes-by-package-7)
86
88
-[v2.10.2](#v2102)
87
-
-[Patch Changes](#patch-changes-19)
89
+
-[Patch Changes](#patch-changes-20)
88
90
-[Changes by Package](#changes-by-package-8)
89
91
-[v2.10.1](#v2101)
90
-
-[Patch Changes](#patch-changes-20)
92
+
-[Patch Changes](#patch-changes-21)
91
93
-[Updated Dependencies](#updated-dependencies-9)
92
94
-[Changes by Package](#changes-by-package-9)
93
95
-[v2.10.0](#v2100)
94
96
-[What's Changed](#whats-changed-3)
95
97
-[Lazy Route Discovery (a.k.a. "Fog of War")](#lazy-route-discovery-aka-fog-of-war)
96
98
-[Minor Changes](#minor-changes-5)
97
-
-[Patch Changes](#patch-changes-21)
99
+
-[Patch Changes](#patch-changes-22)
98
100
-[Updated Dependencies](#updated-dependencies-10)
99
101
-[Changes by Package](#changes-by-package-10)
100
102
-[v2.9.2](#v292)
101
103
-[What's Changed](#whats-changed-4)
102
104
-[Updated Type-Safety for Single Fetch](#updated-type-safety-for-single-fetch)
-`@remix-run/react` - Upgrade `turbo-stream` to `2.4.1` ([#9973](https://github.com/remix-run/remix/pull/9973))
275
+
-`@remix-run/react` - Fix `window is not defined` error in Single Fetch when server-rendering `<PrefetchPageLinks>` ([#10601](https://github.com/remix-run/remix/pull/10601))
276
+
-`@remix-run/serve` - Remove redundant `@remix-run/node/install` import from `remix-serve` because it manually calls `installGlobals` separately ([#10306](https://github.com/remix-run/remix/pull/10306))
Copy file name to clipboardExpand all lines: docs/guides/gotchas.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,7 @@ if (typeof window === "undefined") {
20
20
}
21
21
```
22
22
23
-
This works fine in a Node.js environment, however, Deno actually supports`window`! So if you really want to check whether you're running in the browser, it's better to check for `document` instead:
23
+
This works fine in a Node.js environment, however, some environments might actually support`window` (like Deno v1), so if you really want to check whether you're running in the browser, it's better to check for `document` instead:
The above configuration parses the markdown to insert [highlight.js][highlightjs] friendly DOM elements. To have the syntax highlighting appear, you will also need to include the highlight.js css file. See also [surfacing styles][surfacing-styles].
Copy file name to clipboardExpand all lines: docs/hooks/use-fetcher.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -112,6 +112,8 @@ fetcher.submit(
112
112
113
113
Loads data from a route loader. While multiple nested routes can match a URL, only the leaf route will be called.
114
114
115
+
Note that when calling `load` on an index route's loader, you must include an [`?index` query param][index-query-param] in order to disambiguate between the `index.tsx` layout and the `root.tsx` route.
116
+
115
117
```ts
116
118
fetcher.load("/some/route");
117
119
fetcher.load("/some/route?foo=bar");
@@ -180,3 +182,4 @@ The form method of the submission.
Copy file name to clipboardExpand all lines: docs/hooks/use-revalidator.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -40,16 +40,17 @@ Initiates a revalidation.
40
40
```tsx
41
41
function useLivePageData() {
42
42
const revalidator =useRevalidator();
43
-
const interval =useInterval(5000);
44
43
45
-
useEffect(() => {
44
+
useInterval(() => {
46
45
if (revalidator.state==="idle") {
47
46
revalidator.revalidate();
48
47
}
49
-
}, [interval, revalidator]);
48
+
}, 5000);
50
49
}
51
50
```
52
51
52
+
See [here][here] for a sample `useInterval` implementation.
53
+
53
54
## Notes
54
55
55
56
While you can render multiple occurrences of `useRevalidator` at the same time, underneath it is a singleton. This means when one `revalidator.revalidate()` is called, all instances go into the `"loading"` state together (or rather, they all update to report the singleton state).
@@ -61,3 +62,4 @@ If a navigation happens while a revalidation is in flight, the revalidation will
0 commit comments