diff --git a/lib/parent-namespace.ts b/lib/parent-namespace.ts index 63e7ce56e2..e17bfe8c8d 100644 --- a/lib/parent-namespace.ts +++ b/lib/parent-namespace.ts @@ -48,7 +48,7 @@ export class ParentNamespace< * @private */ _initAdapter(): void { - this.adapter = new ParentBroadcastAdapter(this, this.children); + this.adapter = new ParentBroadcastAdapter(this); } public emit>( @@ -113,12 +113,12 @@ export class ParentNamespace< * @private file */ class ParentBroadcastAdapter extends Adapter { - constructor(parentNsp: any, private readonly children: Set) { + constructor(private readonly parentNsp: any) { super(parentNsp); } broadcast(packet: any, opts: BroadcastOptions) { - this.children.forEach((nsp) => { + this.parentNsp.children.forEach((nsp) => { nsp.adapter.broadcast(packet, opts); }); } diff --git a/test/namespaces.ts b/test/namespaces.ts index ffe9602c30..c9cfe5f6f8 100644 --- a/test/namespaces.ts +++ b/test/namespaces.ts @@ -505,6 +505,7 @@ describe("namespaces", () => { .on("connect", (socket) => { expect(socket.nsp.name).to.be("/dynamic-101"); dynamicNsp.emit("hello", 1, "2", { 3: "4" }); + dynamicNsp.to(socket.id).emit("there", 1, "2", { 3: "4" }); partialDone(); }) .use((socket, next) => {