Skip to content

Commit 9a57a10

Browse files
author
vvo
committed
fix: handle null and undefined prop values
fixes #1
1 parent 7060f39 commit 9a57a10

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

index-test.js

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,11 +152,27 @@ describe(`reactElementToJSXString(ReactElement)`, () => {
152152
}).toThrow('react-element-to-jsx-string: Expected a ReactElement');
153153
});
154154

155-
it('ignores object keys order (sortobject)', () => {
155+
it(`ignores object keys order (sortobject)`, () => {
156156
expect(
157157
reactElementToJSXString(<div o={{a: 1, b: 2}}/>)
158158
).toEqual(
159159
reactElementToJSXString(<div o={{b: 2, a: 1}}/>)
160160
);
161161
});
162+
163+
it(`reactElementToJSXString(<div a={null} />`, () => {
164+
expect(
165+
reactElementToJSXString(<div a={null} />)
166+
).toEqual(
167+
reactElementToJSXString(<div a={null} />)
168+
);
169+
});
170+
171+
it(`reactElementToJSXString(<div a={undefined} />`, () => {
172+
expect(
173+
reactElementToJSXString(<div a={undefined} />)
174+
).toEqual(
175+
reactElementToJSXString(<div a={undefined} />)
176+
);
177+
});
162178
});

index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ function recurse({lvl, inline}) {
117117

118118
function stringifyObject(obj) {
119119
// sortobject fails on some types, like regex
120-
if (Object.keys(obj).length > 0) {
120+
if (obj && Object.keys(obj).length > 0) {
121121
obj = sortobject(obj);
122122
}
123123

0 commit comments

Comments
 (0)