This repository was archived by the owner on Feb 6, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
This repository was archived by the owner on Feb 6, 2023. It is now read-only.
Refs must have owner #296
Copy link
Copy link
Closed
Description
Hi,
I just wanted to try Draft.js and tried to drop the example in my application and I've got the https://fb.me/react-refs-must-have-owner issue.
I simplified a little bit my code, but looks something like this:
// ModalComposer.jsx
import React from 'react'
import { Editor, EditorState } from 'draft-js'
const ModalComposer = React.createClass({
getInitialState () {
return {
editorState: EditorState.createEmpty()
}
},
onChange (editorState) {
this.setState({editorState})
},
render () {
const { editorState } = this.state
return (
<div>
<Editor
editorState={editorState}
onChange={this.onChange}
/>
</div>
)
}
})
export default ModalComposer
// Modal.jsx
import { connect } from 'react-redux'
import ModalComposer from './ModalComposer.jsx'
import * as modalActions from '../../ducks/modals'
import React from 'react'
const Modal = React.createClass({
propTypes: {
dispatch: React.PropTypes.func.isRequired
},
onClickClose () {
this.props.dispatch(modalActions.pop())
},
render () {
return (
<div>
<button onClick={this.onClickClose}></button>
<ModalComposer />
</div>
)
}
})
export default connect()(Modal)
I get the following:
invariant.js:39 Uncaught Invariant Violation: addComponentAsRefTo(...): Only a ReactOwner can have refs. You might be adding a ref to a component that was not created inside a component's
render
method, or you have multiple copies of React loaded (details: https://fb.me/react-refs-must-have-owner
When I comment out the component ModalComposer
(which is basically the draft-js one) I don't get this warning, so its not related to npm and dependencies.
Thanks in advance!