unsubscribeAll unsubHandler存在再卸载

This commit is contained in:
wkj 2023-12-14 09:42:16 +08:00
parent 46b46dc83d
commit f52150aa78
3 changed files with 12 additions and 9 deletions

View File

@ -40,9 +40,10 @@ const oakBehavior = Behavior({
},
unsubscribeAll() {
this.featuresSubscribed.forEach((ele) => {
assert(ele.unsubHandler);
ele.unsubHandler();
ele.unsubHandler = undefined;
if (ele.unsubHandler) {
ele.unsubHandler();
ele.unsubHandler = undefined;
}
});
},
subscribeAll() {

View File

@ -43,9 +43,10 @@ const oakBehavior = Behavior({
},
unsubscribeAll() {
this.featuresSubscribed.forEach((ele) => {
(0, assert_1.assert)(ele.unsubHandler);
ele.unsubHandler();
ele.unsubHandler = undefined;
if (ele.unsubHandler) {
ele.unsubHandler();
ele.unsubHandler = undefined;
}
});
},
subscribeAll() {

View File

@ -129,9 +129,10 @@ const oakBehavior = Behavior<
unsubscribeAll() {
this.featuresSubscribed.forEach((ele) => {
assert(ele.unsubHandler);
ele.unsubHandler();
ele.unsubHandler = undefined;
if (ele.unsubHandler) {
ele.unsubHandler();
ele.unsubHandler = undefined;
}
});
},