提交 a7007ebf authored 作者: yueweilu's avatar yueweilu

答题页答完显示答题结果页

上级 c00cfb18
part of answer;
class AnswerController extends GetxController {
final Map<String,String> params;
AnswerController(this.params);
void changeToResult(){
params['url'] = kAnswerResult;
update();
}
}
\ No newline at end of file
...@@ -9,4 +9,3 @@ import '../../utils/index.dart'; ...@@ -9,4 +9,3 @@ import '../../utils/index.dart';
import '../../widgets/index.dart'; import '../../widgets/index.dart';
part 'view.dart'; part 'view.dart';
part 'controller.dart';
\ No newline at end of file
...@@ -15,19 +15,17 @@ class AnswerPage extends StatefulWidget { ...@@ -15,19 +15,17 @@ class AnswerPage extends StatefulWidget {
class _AnswerPageState extends State<AnswerPage> { class _AnswerPageState extends State<AnswerPage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return GetBuilder( return Scaffold(
init: AnswerController(widget.params),
builder: (aController) =>Scaffold(
appBar: AppBar( appBar: AppBar(
title: Text('${aController.params['title']}'), title: Text('${widget.params['title']}'),
), ),
body: InAppWebView( body: InAppWebView(
initialUrlRequest: URLRequest( initialUrlRequest: URLRequest(
// url: Uri.parse(widget.params['url']??''), // url: Uri.parse(widget.params['url']??''),
url: WebUri.uri(Uri.parse(aController.params['url']??'')) url: WebUri.uri(Uri.parse(widget.params['url']??''))
), ),
onLoadStop: (controller, url) { onLoadStop: (controller, url) {
String str = '$kServerUrl,${aController.params['book_id']},${aController.params['chapter_id']},${aController.params['token']},${aController.params['position']}'; String str = '$kServerUrl,${widget.params['book_id']},${widget.params['chapter_id']},${widget.params['token']},${widget.params['position']}';
Console.log('知识测评--------传给前端的参数--------------------------------$str'); Console.log('知识测评--------传给前端的参数--------------------------------$str');
controller.evaluateJavascript(source: 'callbackInFlutterComponent("$str");'); controller.evaluateJavascript(source: 'callbackInFlutterComponent("$str");');
...@@ -44,7 +42,9 @@ class _AnswerPageState extends State<AnswerPage> { ...@@ -44,7 +42,9 @@ class _AnswerPageState extends State<AnswerPage> {
}); });
// 答完题展示答题结果页 // 答完题展示答题结果页
controller.addJavaScriptHandler(handlerName: 'submitSuccessCallback', callback: (args) async { controller.addJavaScriptHandler(handlerName: 'submitSuccessCallback', callback: (args) async {
aController.changeToResult(); controller.loadUrl(urlRequest: URLRequest(
url: WebUri.uri(Uri.parse(kAnswerResult))
));
}); });
}, },
onConsoleMessage: (controller, consoleMessage) { onConsoleMessage: (controller, consoleMessage) {
...@@ -52,7 +52,6 @@ class _AnswerPageState extends State<AnswerPage> { ...@@ -52,7 +52,6 @@ class _AnswerPageState extends State<AnswerPage> {
Console.log("知识测评-------Received message from WebView-----------------------------: ${consoleMessage.message}"); Console.log("知识测评-------Received message from WebView-----------------------------: ${consoleMessage.message}");
}, },
) )
), );
);
} }
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论