Comments (4)
Indeed, it would be simple, which is tempting. But I'm slightly cautious.
core.async/put!
itself only allows you to put one thing at a time, and there's a reason for that - you want your API to be the simplest thing possible, while still facilitating the more complex things.
from re-frame.
Only one thing is being put!
at a time, unless I misunderstand something.
from re-frame.
I'm pointing out that put!
doesn't support multiple additions in one go. Instead put!
provides the minimal API and then lets you build more complicated things on top (eg, multiple puts). And I'm suggesting that dispatch
should be minimal in the same way.
There's a another, more subtle, reason I'm resisting this. I wonder if one day we'll actually want to add new, optional parameters to dispatch
after the event. Additional flags. I wouldn't want to cut off that possibility for the moment.
So I'm going to say no to this for the moment. I'm hoping that your use-case can be satisfied by a emit-n
function like this which is a part of your own app:
(defn emit-n
[& event-vs]
(doall (map dispatch (remove nil? event-vs)))
nil)
from re-frame.
Actually, the second reason makes a lot more sense to me. If you think the api could change, then you don't want to change it up. Cheers.
from re-frame.
Related Issues (20)
- [Enhancement]: Allow nil to be used as a value for :fx HOT 5
- [Enhancement]: Warn on `subscribe` being used outside of a reactive context HOT 3
- [Enhancement]: Allow enrich to return `nil` HOT 7
- [Enhancement]: Allow subscribe to be safely called from anywhere
- [Enhancement]: Add the UseASubscriptionInAJsEvent page to the FAQs menu in the docs HOT 1
- [Bug]: de-referencing re-frame.db/app-db inside subscription counts as changing data? HOT 1
- [Bug] [Docs]: Simple app example docs out of sync with code in repo
- [Bug]: CSS link path changing with URL HOT 1
- [Enhancement]: Adding syntax sugar :<= for input subscriptions taking the same query vectors. HOT 2
- [Bug]: fix examples projects lockfiles warning HOT 2
- [Enhancement]: Warning on re-registering subs / events (ie name collision detection) improvements HOT 4
- [Enhancement]: reg-event-fx :fx shorthand HOT 3
- [Bug]: Multiple usage of the same standard interceptor creator in global doesn't work HOT 2
- [Enhancement]: Subscriptions that return `nil` or `false` are evaluated regardless of what's in cache HOT 3
- Wenn ich etwas vom Planeten entferne oder davon etwas abbauen, muss ich auch etwas wieder zurückführen damit es im Gleichgewicht bleibt! HOT 1
- [Bug]: Reframe 10x is not being opened with ctrl+h after 1.6.0 HOT 1
- [Enhancement]: Upgrade React dependency to React 18 HOT 3
- Steigende Preise: Die einzige Lösung hier erklärt... HOT 1
- [Bug]: Bump Reagent version up possible?
- Calling `subscribe` in a render fn clashes with reagent optimizations HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from re-frame.