Skip to content
This repository was archived by the owner on Jun 3, 2024. It is now read-only.

4.2.2

Choose a tag to compare

@glyph-cat glyph-cat released this 08 Apr 16:39

This release contains a bug fix for useRelinkValue where the state is returned as null if the active parameter is set to false in the beginning.


Consider the code below:

import { useState, useEffect } from 'react'
import { RelinkSource, useRelinkValue } from 'react-relink'

const SomeSource = new RelinkSource({
  key: 'some-source',
  default: 42,
})

function App(): JSX.Element {
  const [active, setActive] = useState(false)
  const someState = useRelinkValue(SomeSource, null, active)
  useEffect(() => { setActive(true) }, [])
  console.log(someState)
  return <h1>Hello world</h1>
}

Before fix:

Render cycle active someState Is expected value?
First false null ❌ No
Second true 42 ✅ Yes

After fix:

Render cycle active someState Is expected value?
First false 42 ✅ Yes
Second true 42 ✅ Yes