mirror of
https://github.com/zoriya/react-native-omni.git
synced 2026-08-16 02:44:51 +00:00
fix(perf): don't call player native methods unnecessarily
This commit is contained in:
+3
-1
@@ -32,7 +32,9 @@ export function usePlayerState<Key extends keyof OmniPlayerState>(
|
|||||||
refresh?: number,
|
refresh?: number,
|
||||||
): OmniPlayerState[Key] {
|
): OmniPlayerState[Key] {
|
||||||
const player = usePlayer() as OmniPlayer;
|
const player = usePlayer() as OmniPlayer;
|
||||||
const [ret, setState] = useState<any>(player[key]);
|
// don't call `player[key]` (native call on main thread) every re-render
|
||||||
|
// only do it when needed (init)
|
||||||
|
const [ret, setState] = useState<any>(() => player[key]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const em = player.eventMap;
|
const em = player.eventMap;
|
||||||
|
|||||||
Reference in New Issue
Block a user