Skip to content

Commit f029ff8

Browse files
typeofwebiamsolankiamit
authored andcommitted
Make sure original document.title is restored only on unmount
1 parent 56dba6f commit f029ff8

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

index.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
interface DocumentTitle {}
22

3-
export default function useDocumentTitle(title: string): DocumentTitle;
3+
export default function useDocumentTitle(title: string, retainOnUnmount?: boolean): DocumentTitle;

index.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,15 @@ function useDocumentTitle(title, retainOnUnmount = false) {
66

77
useEffect(() => {
88
document.title = title;
9+
}, [title]);
910

11+
useEffect(() => {
1012
return () => {
11-
if (!retainOnUnmount) document.title = defaultTitle.current;
13+
if (!retainOnUnmount) {
14+
document.title = defaultTitle.current;
15+
}
1216
};
13-
}, [title]);
17+
}, []);
1418
}
1519

1620
module.exports = useDocumentTitle;

index.js.flow

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
interface DocumentTitle {}
2-
declare function useDocumentTitle(title: string): DocumentTitle;
2+
declare function useDocumentTitle(title: string, retainOnUnmount?: boolean): DocumentTitle;
33

44
export default useDocumentTitle;

0 commit comments

Comments
 (0)