GithubHelp home page GithubHelp logo

Comments (3)

andreypopp avatar andreypopp commented on June 17, 2024

my 2 cents here: I think actions is the place where additional validations might be useful, so what do you think if when creating actions developer can specify arg type validation, similar to propTypes in React.

from refluxjs.

spoike avatar spoike commented on June 17, 2024

@andreypopp I wonder if it is just easier to do the function approach anyway... and add a validator composer. E.g. like this:

// composing validator
var validatorFunc = Reflux.createValidator(
    Reflux.validators.isNumberIntervalOf(0, 100), 
    Reflux.validators.isNot(1));
// attach validator to action
var action = Reflux.createAction(validatorFunc);

Alternatively put that into the shouldEmit hook instead.

// attach validator to action
var action = Reflux.createAction();
action.shouldEmit = validatorFunc;

Also validators may need to "throw an error" by invoking relevant action(s) for an error handling flow. Probably add that to the validator as parameter:

// ErrorAction(s) defined earlier
var validatorFunc = Reflux.createValidator(
    Reflux.validators.isNot(-1, ErrorAction.wrongNumberOnTextField)
);

Does this make sense to you all?

from refluxjs.

spoike avatar spoike commented on June 17, 2024

Krawaller has implemented the passthrough on preEmit in #78 which is included in 0.1.8.

Closing this issue now, since I'm pretty sure you can use 3rd party argument matchers in javascript. So I'm dropping the idea for now until someone comes with a really good idea for validator implementation.

from refluxjs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.