website/versioned_docs/version-0.84/document-nodes.md
Document nodes represent a complete native view tree. Apps using native navigation would provide a separate document node for each screen. Apps not using native navigation would generally provide a single document for the whole app (similar to single-page apps on Web).
import * as React from 'react';
import {Text, TextInput, View} from 'react-native';
function MyComponent(props) {
return (
<View ref={props.ref}>
<Text>Start typing below</Text>
<TextInput id="main-text-input" />
</View>
)
}
export default function AccessingDocument() {
const ref = React.useRef(null);
React.useEffect(() => {
// Get the main text input in the screen and focus it after initial load.
const element = ref.current;
const doc = element.ownerDocument;
const textInput = doc.getElementById('main-text-input');
textInput?.focus();
}, []);
return (
<MyComponent ref={ref} />
);
}
From Document:
From Node: