v1
- by story_arc 4/28/202300
disable setup HTML
Setup HTML
<div id="jotai-root"></div>
<div id="recoil-root"></div>
<div id="zedux-root"></div>
<script src="https://unpkg.com/react@18.2.0/umd/react.production.min.js"></script>
<script src="https://unpkg.com/react-dom@18.2.0/umd/react-dom.production.min.js"></script>
<script src="https://unpkg.com/recoil@0.7.7/umd/index.js"></script>
<script src="https://unpkg.com/jotai@2.0.4/umd/vanilla.development.js"></script>
<script src="https://unpkg.com/jotai@2.0.4/umd/react.development.js"></script>
<script src="https://unpkg.com/@zedux/react@1.0.0/dist/zedux-react.umd.min.js"></script>
disable setup JavaScript
Setup JavaScript
const Jotai = { ...jotaiReact, ...jotaiVanilla }

let i = 0;
const nextId = () => `${++i}`

const jotaiStore = Jotai.createStore()
const ecosystem = ZeduxReact.createEcosystem()

const zeduxAtom = ZeduxReact.atom(nextId(), 0)

const jotaiAtom = Jotai.atom(0)
jotaiAtom.debugLabel = nextId()

const recoilAtom = Recoil.atom({
  key: nextId(),
  default: 0,
});

function Test() {
  const setState = React.useState(0)[1]
  const val = Recoil.useRecoilState(recoilAtom);
  return React.createElement('button', { id: "recoil-updater", onClick: () => setState(val => val + 1) })
}

let updateRecoil

ReactDOM.render(
  React.createElement(Recoil.RecoilRoot, {}, React.createElement(Test)),
  document.getElementById('recoil-root'),
  () => {
    const el = document.getElementById('recoil-updater')
    updateRecoil = () => el.click()
  }
 )
delete caserun single casemove downdrag and drop case


ready



const instance = ecosystem.getInstance(zeduxAtom)
delete caserun single casemove upmove downdrag and drop case


ready



updateRecoil()
delete caserun single casemove updrag and drop case


ready



const value = jotaiStore.get(jotaiAtom)
Test Case - click to add another test case
Teardown JS - click to add teardown JavaScript
Output (DOM) - click to monitor output (DOM) while test is running
RUN