Skip to content

Commit ba198b7

Browse files
Merge pull request #4793 from frontman-git/fix/4769-forward-render-prop
fix(compat): add .render property referencing original render function
2 parents 88cda26 + a76dd9b commit ba198b7

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

compat/src/forwardRef.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export function forwardRef(fn) {
2222
// It expects an object here with a `render` property,
2323
// and prototype.render will fail. Without this
2424
// mobx-react throws.
25-
Forwarded.render = Forwarded;
25+
Forwarded.render = fn;
2626

2727
Forwarded.prototype.isReactComponent = true;
2828
Forwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';

compat/test/browser/forwardRef.test.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -498,4 +498,15 @@ describe('forwardRef', () => {
498498

499499
expect(actual).to.equal(null);
500500
});
501+
502+
// Issue #4769
503+
it('should attach .render pointing to the original render function', () => {
504+
function Foo(props, ref) {
505+
return <div ref={ref} />;
506+
}
507+
508+
const Forwarded = forwardRef(Foo);
509+
510+
expect(Forwarded.render).to.equal(Foo);
511+
});
501512
});

0 commit comments

Comments
 (0)