onMessageReceived method

void onMessageReceived(
  1. String message
)

The receiver method that the JavaScript object passes a message. For example, if you use webview_flutter plugin, see following code.

JavascriptChannel(
  name: KamomeClient.apiName,
  onMessageReceived: (JavascriptMessage result) {
    _kamomeClient.onMessageReceived(result.message);
  },
)

Implementation

void onMessageReceived(String message) {
  final Map<String, dynamic> object = json.decode(message);
  final requestId = object['id'] as String;
  final name = object['name'] as String;

  Map<String, dynamic>? data;
  if (object.containsKey('data') && object['data'] != null) {
    data = object['data'] as Map<String, dynamic>;
  }

  _handle(name, data, Completion(_jsRunner, requestId));
}