Comments (2)
Perhaps you could in your library do something like:
const stream = (...args)=> {
const s = flyd.stream(...args);
s.metadata = flyd.stream();
// pretend we received an update
s.metadata.map(()=> s(s()));
return s;
}
// ... later
const combined = combine((v1, v2) => {
const metadata = {...v1.metadata(), ...v2.metadata()};
console.log('data', v1());
console.log('data', v2());
console.log('meta', metadata);
}, [s1, s2])
Maybe you could enforce usage of the streams as a Tuple
const s1 = stream([1])
const s2 = stream([0]);
const combined = combine(()=> {
const values = [s1, s2].map(v => v());
const [v1, v2] = values.map(v => v[0]);
const meta = values.reduce((p,v)=> Object.assign(p, v[1] || {}), {});
console.log('data', v1);
console.log('data', v2);
console.log('meta', meta);
}, [s1, s2])
s2([1, {metadata: true}])
from flyd.
I'm not quite sure what you're trying to achieve with the metadata thing, could you elaborate a bit on what it is you're actually trying to achieve?
from flyd.
Related Issues (20)
- add more dependency for existing combine HOT 7
- Merge stream delay HOT 6
- add package.module
- Drag 'n Drop example is broken HOT 2
- Compare previous state with current state HOT 14
- Help to build control flow func HOT 3
- Do you think this Promise -> Stream conversion is a right alternative way? HOT 6
- Wrong chain + setImmediate behavior HOT 1
- Benchmark against Most.js HOT 3
- Can flyd streams be made lazy ? HOT 9
- HELP: Trouble reading api documentation HOT 1
- Enhancement: Add Readonly-Streams (at least in Typings) HOT 3
- What's the motivation for ending a stream? HOT 3
- question on serialize stream
- from Node stream HOT 2
- Question: Required (code) complexity for higher-order streams HOT 10
- Support multiple operators for Pipe HOT 4
- [Help Needed] CombineLatest in the style of RxJs HOT 17
- Switch Latest without Ramda Dependency HOT 6
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 flyd.