在我的 Flutter 应用程序中,单击按钮会调用 js 函数“get User Push()”。结果写入 INFO:CONSOLE 中。请告诉我如何获取这些数据以供将来使用?
onPressed: () async {
//controller.runJavaScript('getRole()');
//String? s = stdin.readLineSync();
//Future regionName = controller.runJavaScriptReturningResult('getUserPush()');
Future userId = controller.runJavaScriptReturningResult('getUserPush()');
userId.then((data) {
String hZonesInt = data.toString();
print(hZonesInt);
},
onError: (e) {
print(e);
});
},
控制台显示信息:
I/chromium(14500): [INFO:CONSOLE(1300)] "37", source: ************* (1300)
我尝试解密函数本身的返回值,但总是得到 null。我也尝试直接从控制台读取,但也得到了null。
您可以在调用 onPress 函数之前创建一个变量(我们称之为“foo”)。 然后,每当您从 runJavaScriptReturningResult 获得结果时,将结果分配(在 .then() 块中)到您事先创建的变量,以便稍后您可以调用该 foo 变量来读取其值。
late final foo;
onPressed: () async {
//controller.runJavaScript('getRole()');
//String? s = stdin.readLineSync();
//Future regionName = controller.runJavaScriptReturningResult('getUserPush()');
Future userId = controller.runJavaScriptReturningResult('getUserPush()');
userId.then((data) {
String hZonesInt = data.toString();
print(hZonesInt);
foo = data;
},
onError: (e) {
print(e);
});
},
希望这对您有一点帮助。