As far as I know, the main alternative to strings refis the ES6 style callback function.
So:
<textarea ref="myTextArea">
...
</textarea>
// Where refs are then accessed by `this.refs.myTextArea` to perform any operations
Becomes in basic form:
<textarea ref={ (ref) => this.myTextArea = ref }>
...
</textarea>
This can be quite powerful, because an attribute refin React automatically receives the referenced component as a parameter, which allows us to immediately execute our callback operations on it if it wants. This can be used in a simple form, as indicated above, to assign this link this.myTextAreaor, as you probably noticed in the docs, you can be a little more direct and do things like:
<input
ref = {(input) =>
{ if (input != null) {input.focus()} }
} />
, , , . ( ), ref, , , .
, , React , - , (ref) => this.myRef = ref, refs this.myRef.