Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

 
 

Latest commit

 

History

62 Commits

Folders and files

Repository files navigation

Store Api Wrapper (Model)

Models

  User = Model({
    api: Client("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/api/users"),
    store: Store("users")
  })

Stores

Store Instance

  users = Store("users");

Get

  users.get()

Listen for changes

  users.onChange(function(){
    console.log(users.get())
  })

Set

  users.set({email: "johndoe@example.com"});

Sub Stores

  userId = 1
  users.store(userId).store("profiles").set([{
    firstName: "John",
    lastName: "Doe"
  }]);

Special Listerners

  users.onIsEqualTo({email: "billdoe@example.com"}, function(){
    console.log("Is now Bill Doe's email")
  });

  users.set({email: "billdoe@example.com"})

All Other Listeners

update
change
empty
blank
create
notBlank
isObject
isArray
isString
isNumber
increase
decrease

Store Mixin

      React.createClass({
        mixins: [Store.ReactMixin],
        followStores: function() {
          // Can be an array, object, or function that returns an array or object
          // Arrays can contain strings or objects
          // Strings will be both the state key and store key
          // Object keys will be the state key and values will be the store key
          // return ["users", { organization: "currentOrganization"]
          return {
            users: "users",
            assessments: "assessments"
          }
        },
        componentDidMount: function() {
          this.followChange(Store("users.params").onChange(function() {
            // Follow more changes
          }))
        }
      })
      // All the stores or changes that are followed, will be detached in componentDidUnmount

Client

  ApiClient = {
    users: Client("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/api/users"),
    organizations: Client({"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/api/organizations", scope: "find"})
  }
  ApiClient.users.findOne({id: 10}).then(function(user){
    console.log(user)
  })

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages