Comments (5)
If I understand correctly, you would like a way to remove all subscriptions for a topic.
A dedicated method would probably be better than further overloading the unsubscribe
method. Perhaps it could look like: PubSub.clearSubscriptions('topic')
How would that affect hierarchical topics?
var func = function NOOP(){};
PubSub.subscribe('a', func);
PubSub.subscribe('a.b', func);
PubSub.subscribe('a.b.c', func);
PubSub.clearSubscriptions('a.b');
PubSub.publish('a.b.c', { hello : 'world' });
// Would func still be notified of `a.b.c` topic?
from pubsubjs.
To be frank I had not considered hierarchical topics. But I suppose it would work the same way because, why not. If you unsubscribe a parent, like a.b
in your example, it would make sense that any sub-topics would also be unsubscribed.
from pubsubjs.
I think that I am unlikely to use such a method myself, as I prefer to design parts of systems to not have too much knowledge about other parts of systems (so, in one part, I might not know if it would be safe to remove all subscriptions).
However, I think that with the right level of documentation, such a method could be useful in some scenarios.
from pubsubjs.
The use case could be cleanup of an app, removing all global-level listeners when they are no longer needed because the app served it's purpose.
from pubsubjs.
This has been implemented with #62, and is included in 1.5.0
from pubsubjs.
Related Issues (20)
- Add .d.ts HOT 8
- Waiting for subscriber to finish executing HOT 1
- Allow passing array of subscription tokens into unsubscribe
- Allow subscribing to multiple topics at once with same callback HOT 1
- Import vs window - unpredictable publishers HOT 5
- countSubscriptions always returns 1 HOT 4
- getSubscriptions wrong result
- use it in react hooks Why are requests repeated HOT 3
- PubSub does not work under Context API HOT 4
- Add "files" field in package.json HOT 1
- PubSub keep using the initial state value in .subscribe() - ReactJS HOT 4
- Any tests examples approach on this library? (with React) HOT 2
- Add the possibility to await sync events (publishAwait) HOT 3
- I can't subscribe event while publish any topic, in different controller
- Rename "PubSub" variable for multiple instances HOT 1
- Feature wanted - RegExp HOT 1
- clearSubscriptions would clear different topics which includes the same string
- ReadMe points to wrong jsdelivr package HOT 5
- Publish Latest value HOT 2
- Wildcard support for subscriptions? HOT 2
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 pubsubjs.