entao_message 1.0.2
entao_message: ^1.0.2 copied to clipboard
Dispatch message with variant arguments.
Dispatch message with variant arguments. #
Basic #
MessageCall mc = MessageCall();
mc.add("online", () => print("online 1"));
mc.add("online", () => print("online 2"));
mc.fire("online");
// online 1
// online 2
Return value #
MessageCall mc = MessageCall();
mc.add("online", () => 1);
mc.add("online", () => 2);
List<dynamic> r1 = mc.fireSync("online");//sync
print(r1);
// [1, 2]
List<dynamic> r2 = await mc.fire("online");//async
print(r2);
// [1, 2]
With Arguments #
MessageCall mc = MessageCall();
mc.add("online", (String name, {String? message}) => print("$name is online: $message"));
mc.add("online", (String name, {String? message}) => print("Again. $name is online: $message"));
await mc.fire("online", "Tom", message: "Hello Jerry.");
// Tom is online: Hello Jerry.
// Again. Tom is online: Hello Jerry.