24 lines
849 B
Dart
24 lines
849 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:star_lock/webview/webview_logic.dart';
|
|
import 'package:webview_flutter/webview_flutter.dart';
|
|
|
|
class LockMallState {
|
|
var lockMallUrl = "".obs;
|
|
var webProgress = 0.0.obs;
|
|
late WebViewController mallWebView = WebViewController()
|
|
..setJavaScriptMode(JavaScriptMode.unrestricted)
|
|
..setBackgroundColor(Colors.white)
|
|
..setUserAgent(WebViewLogic.userAgent)
|
|
..setNavigationDelegate(NavigationDelegate(onNavigationRequest: onNavigationRequest));
|
|
|
|
//路由跳转逻辑
|
|
Future<NavigationDecision> onNavigationRequest(NavigationRequest request) async {
|
|
if (WebViewLogic.judgePaySchemes(request.url)) {
|
|
await WebViewLogic.runScheme(request.url);
|
|
return NavigationDecision.prevent;
|
|
}
|
|
return NavigationDecision.navigate;
|
|
}
|
|
}
|