0.6.0-alpha.1 • Published 1 year ago

react-compostate v0.6.0-alpha.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

react-compostate

React bindings for compostate

NPM JavaScript Style Guide

Install

npm install --save compostate react-compostate
yarn add compostate react-compostate
pnpm add compostate react-compostate

Usage

import { defineComponent, onEffect } from 'react-compostate';
import { ref } from 'compostate';

// Define a component
const CounterMessage = defineComponent((props) => {
  // This function only runs once, hooks cannot be used here.

  // react-compostate provides `onEffect` as a lifecycle hook
  // You can use this instead of tracking API like `effect`
  onEffect(() => {
    console.log('Count: ', props.value);
  });

  // Return the render atom
  return () => (
    <h1>{`Count: ${props.value}`}</h1>
  );
});

const Counter = defineComponent(() => {
  const count = ref(0);

  function increment() {
    count.value += 1;
  }

  function decrement() {
    count.value -= 1;
  }

  return () => (
    <>
      <button type="button" onClick={increment}>
        Increment
      </button>
      <button type="button" onClick={decrement}>
        Decrement
      </button>
      <CounterMessage value={count.value} />
    </>
  );
});

License

MIT © lxsmnsyc

0.5.1

1 year ago

0.6.0-alpha.1

1 year ago

0.6.0-alpha.0

1 year ago

0.5.0

2 years ago

0.3.0

2 years ago

0.4.0

2 years ago

0.2.1-beta.10

3 years ago

0.2.1-beta.8

3 years ago

0.2.1-beta.9

3 years ago

0.2.1-beta.6

3 years ago

0.2.1-beta.5

3 years ago

0.2.1-beta.2

3 years ago

0.2.1-beta.3

3 years ago

0.2.1-beta.0

3 years ago

0.2.1-beta.1

3 years ago

0.2.1-beta.4

3 years ago

0.2.1-no-vdom.61

3 years ago

0.2.1-no-vdom.58

3 years ago

0.2.1-no-vdom.59

3 years ago

0.2.1-no-vdom.60

3 years ago

0.2.1-no-vdom.46

3 years ago

0.2.1-no-vdom.47

3 years ago

0.2.1-no-vdom.44

3 years ago

0.2.1-no-vdom.43

3 years ago

0.2.1-no-vdom.49

3 years ago

0.2.1-no-vdom.50

3 years ago

0.2.1-no-vdom.57

3 years ago

0.2.1-no-vdom.53

3 years ago

0.2.1-no-vdom.54

3 years ago

0.2.1-no-vdom.51

3 years ago

0.2.1-no-vdom.52

3 years ago

0.2.1-no-vdom.35

3 years ago

0.2.1-no-vdom.36

3 years ago

0.2.1-no-vdom.33

3 years ago

0.2.1-no-vdom.34

3 years ago

0.2.1-no-vdom.31

3 years ago

0.2.1-no-vdom.32

3 years ago

0.2.1-no-vdom.39

3 years ago

0.2.1-no-vdom.37

3 years ago

0.2.1-no-vdom.38

3 years ago

0.2.1-no-vdom.42

3 years ago

0.2.1-no-vdom.40

3 years ago

0.2.1-no-vdom.24

3 years ago

0.2.1-no-vdom.25

3 years ago

0.2.1-no-vdom.28

3 years ago

0.2.1-no-vdom.29

3 years ago

0.2.1-no-vdom.26

3 years ago

0.2.1-no-vdom.27

3 years ago

0.2.1-no-vdom.11

3 years ago

0.2.1-no-vdom.12

3 years ago

0.2.1-no-vdom.16

3 years ago

0.2.1-no-vdom.10

3 years ago

0.2.1-no-vdom.7

3 years ago

0.2.1-alpha.19

3 years ago

0.2.1-no-vdom.5

3 years ago

0.2.1-no-vdom.6

3 years ago

0.2.1-no-vdom.0

3 years ago

0.2.1-no-vdom.1

3 years ago

0.2.1-alpha.17

3 years ago

0.2.1-alpha.11

3 years ago

0.2.1-alpha.7

3 years ago

0.2.1-alpha.8

3 years ago

0.2.1-alpha.5

3 years ago

0.2.1-alpha.4

3 years ago

0.2.1-alpha.0

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago