Skip to content

Commit a3b237c

Browse files
committed
Update react api jsdoc example
1 parent 07916b3 commit a3b237c

File tree

3 files changed

+51
-14
lines changed

3 files changed

+51
-14
lines changed

docs-devsite/telemetry_react.md

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,31 @@ The default [Telemetry](./telemetry_.telemetry.md#telemetry_interface) instance
5656
### Example
5757

5858

59-
```html
60-
<body>
61-
<FirebaseTelemetry firebaseApp={app} />
62-
... my app ...
63-
</body>
59+
```typescriptreact
60+
import { useEffect, useState } from "react";
61+
import { FirebaseTelemetry } from "@firebase/telemetry/react";
62+
import { FirebaseApp, initializeApp } from "@firebase/app";
63+
64+
export default function MyApp() {
65+
const [app, setApp] = useState<FirebaseApp | null>(null);
66+
67+
useEffect(() => {
68+
const app = initializeApp({...});
69+
setApp(app);
70+
}, []);
71+
72+
return (
73+
<>
74+
{app && (
75+
<FirebaseTelemetry
76+
firebaseApp={app}
77+
telemetryOptions={{...}}
78+
/>
79+
)}
80+
...
81+
</>
82+
);
83+
}
6484
6585
```
6686

packages/telemetry/src/angular/index.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,7 @@ export class FirebaseErrorHandler implements ErrorHandler {
8181
private readonly router = inject(Router);
8282
private readonly telemetry: Telemetry;
8383

84-
constructor(
85-
app: FirebaseApp,
86-
telemetryOptions?: TelemetryOptions
87-
) {
84+
constructor(app: FirebaseApp, telemetryOptions?: TelemetryOptions) {
8885
this.telemetry = getTelemetry(app, telemetryOptions);
8986
}
9087

packages/telemetry/src/react/index.ts

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,31 @@ export * from '../public-types';
3232
* implicitly caught by Error Boundaries, will not be captured by this component.
3333
*
3434
* @example
35-
* ```html
36-
* <body>
37-
* <FirebaseTelemetry firebaseApp={app} />
38-
* ... my app ...
39-
* </body>
35+
* ```typescriptreact
36+
* import { useEffect, useState } from "react";
37+
* import { FirebaseTelemetry } from "@firebase/telemetry/react";
38+
* import { FirebaseApp, initializeApp } from "@firebase/app";
39+
*
40+
* export default function MyApp() {
41+
* const [app, setApp] = useState<FirebaseApp | null>(null);
42+
*
43+
* useEffect(() => {
44+
* const app = initializeApp({...});
45+
* setApp(app);
46+
* }, []);
47+
*
48+
* return (
49+
* <>
50+
* {app && (
51+
* <FirebaseTelemetry
52+
* firebaseApp={app}
53+
* telemetryOptions={{...}}
54+
* />
55+
* )}
56+
* ...
57+
* </>
58+
* );
59+
* }
4060
* ```
4161
*
4262
* @param firebaseApp - The {@link @firebase/app#FirebaseApp} instance to use.

0 commit comments

Comments
 (0)