Skip to content

Commit 5546894

Browse files
committed
Add displayNameHandler reference and update handler docs
1 parent 2f139c7 commit 5546894

File tree

3 files changed

+81
-10
lines changed

3 files changed

+81
-10
lines changed

packages/website/pages/docs/reference/handlers/component-docblock-handler.mdx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ export default () => <div />;
1717
```json {3} filename="Result"
1818
[
1919
{
20-
"description": "This is my component and this is its description.",
21-
"methods": []
20+
"description": "This is my component and this is its description."
2221
}
2322
]
2423
```

packages/website/pages/docs/reference/handlers/default-props-handler.mdx

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,17 @@
11
# defaultPropsHandler
22

3-
Finds the default props from the react component.
3+
Finds the default props from the react component and adds it to the
4+
documentation. Supported variants are
5+
6+
- The static property named `defaultProps` in Class components
7+
- Assignment of the static property `defaultProps` on Class or Function
8+
components
9+
- Default values in destructuring the prop argument in Function components
410

511
## Example
612

7-
The following components will all result in the following documentation
13+
When the `defaultPropsHandler` is active these components will all result in the
14+
following documentation
815

916
```ts {2-4} filename="component.tsx"
1017
export default class MyComponent extends React.Component {
@@ -18,7 +25,7 @@ export default class MyComponent extends React.Component {
1825
```
1926

2027
```ts {7-9} filename="component.tsx"
21-
class MyComponent extends React.Component {
28+
export default class MyComponent extends React.Component {
2229
render() {
2330
return <div />;
2431
}
@@ -27,8 +34,6 @@ class MyComponent extends React.Component {
2734
MyComponent.defaultProps = {
2835
a: '1',
2936
};
30-
31-
export default MyComponent;
3237
```
3338

3439
```ts {3-5} filename="component.tsx"
@@ -45,11 +50,9 @@ export default MyComponent;
4550
export default ({ a = '1' }) => <div />;
4651
```
4752

48-
```json {7-11} filename="Result"
53+
```json {5-9} filename="Result"
4954
[
5055
{
51-
"description": "",
52-
"methods": [],
5356
"props": {
5457
"a": {
5558
"defaultValue": {
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,70 @@
11
# displayNameHandler
2+
3+
Tries to find the name of a react component. It considers these as possible
4+
names and will use the first one found in order:
5+
6+
- The static property `displayName` in Class components
7+
- Assignment of the static property `displayName` on Class or Function
8+
components
9+
- The name of a Function or Class component
10+
- The variable name that an anonymous Function Component is assigned to
11+
12+
## Example
13+
14+
When the `displayNameHandler` is active these components will all result in the
15+
following documentation
16+
17+
```ts {2} filename="component.tsx"
18+
export default class extends React.Component {
19+
static displayName = 'DisplayName';
20+
render() {
21+
return <div />;
22+
}
23+
}
24+
```
25+
26+
```ts {7} filename="component.tsx"
27+
export default class MyComponent extends React.Component {
28+
render() {
29+
return <div />;
30+
}
31+
}
32+
33+
MyComponent.displayName = 'DisplayName';
34+
```
35+
36+
```ts {5} filename="component.tsx"
37+
export default function MyComponent() {
38+
return <div />;
39+
}
40+
41+
MyComponent.displayName = 'DisplayName';
42+
```
43+
44+
```ts {1} filename="component.tsx"
45+
export default class DisplayName extends React.Component {
46+
render() {
47+
return <div />;
48+
}
49+
}
50+
```
51+
52+
```ts {1} filename="component.tsx"
53+
export default function DisplayName() {
54+
return <div />;
55+
}
56+
```
57+
58+
```ts {1} filename="component.tsx"
59+
const DisplayName = () => <div />;
60+
61+
export default DisplayName;
62+
```
63+
64+
```json {3} filename="Result"
65+
[
66+
{
67+
"displayName": "DisplayName"
68+
}
69+
]
70+
```

0 commit comments

Comments
 (0)