4.0.3 • Published 5 years ago

reststate v4.0.3

Weekly downloads
4
License
ISC
Repository
github
Last release
5 years ago

deprecated

this module is deprecated please use

reststate

state managment for react apps

install

npm i reststate --save

use

import { init, state } from "reststate";
...
init({
  name: "hello"
});
...
state.hello="Hello world"
...
console.log(state.hello)

inits

/**
 * initial new state just for example
 * this is a stack with maximum length 4
 * and return any time last item of stack
 */
inits([
  {
    name: "state1",
    defaultValue: 0
  },
  {
    name: "state2",
    defaultValue: {}
  }
]);

connect

import connect from "jetstate/connect";

class app extends React.Component {
  stateChange = () => {
    console.log("ok");
    this.forceUpdate();
  };
  render() {
    return (
      <View>
        <Text>{state.state1}</Text>
        <Button
          title={"add"}
          onPress={() => {
            state.state1 += 1;
          }}
        />
      </View>
    );
  }
}
export default connect(
  app,
  ["state1"]
);
//refresh component any time state changed

connectInline

import connectInline from "jetstate/connectInline";

class app extends React.Component {
  constructor(props) {
    super(props);
    this.unsubscribe = connectInline(this, [
      { name: "state1", callback: this.stateChange },
      "state2"
    ]);
  }
  stateChange = () => {
    console.log("ok");
    this.forceUpdate();
  };
  render() {
    return (
      <View>
        <Text>{state.state1}</Text>
        <Button
          title={"add"}
          onPress={() => {
            state.state1 += 1;
          }}
        />
      </View>
    );
  }
  componentsWillUnmount() {
    this.unsubscribe();
  }
}
export default app;
//runs stateChange when state update recommended when you dont want render component

reset

import { reset, defaultValue } from "reststate";
/**
 * you can get defualt value 
 */
console.log(defaultValue.state1)
/**
 * reset state to defualt value
 */
reset("state1");

set

import { set } from "reststate";
/**
 * set few state value
 */
set({ state1: "change value", state2: "change value too" });

forceUpdate

import { forceUpdate } from "reststate";
/**
 * update or run all connected to this state
 */
forceUpdate("state2");

other utility

import clone from "reststate/clone";
/**
 * copy variable1 to variable2
 * recommended for Object and array or other type
 */
var variable2 = clone(variable1);
4.0.3

5 years ago

4.0.2

5 years ago

4.0.1

5 years ago

4.0.0

5 years ago

3.2.0

5 years ago

3.1.2

5 years ago

3.1.1

5 years ago

3.1.0

5 years ago

3.0.0

5 years ago

2.0.10

5 years ago

2.0.9

5 years ago

2.0.8

5 years ago

2.0.7

5 years ago

2.0.6

5 years ago

2.0.5

5 years ago

2.0.4

5 years ago

2.0.3

5 years ago

2.0.2

5 years ago

2.0.1

5 years ago

2.0.0

5 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago