我是 Flutter Web 的菜鸟。我有一个包,我试图在 Flutter Web 中创建支持,但它使用 webview 来实现某些功能。Flutter Web 不支持 Webview,因此我使用IFrameElement和ui.platformViewRegistry.registerViewFactory()来充当 Webview。我传递的是要加载的 HTML 字符串而不是文件。
我需要能够运行 JS 函数并从 JS 获取数据。我已经尝试了很多不同的事件和事件侦听器,但context.callMethod()到目前为止还没有任何效果。有没有一种简单的方法可以实现这一点?
作为参考,我正在使用 Summernote 库,我可以运行类似\$('#summernote').summernote('reset');重置 Summernote 编辑器的操作。有时我需要从 JS 获取数据,所以我运行var str = \$('#summernote').summernote('code'); console.log(str);它在编辑器中提供 HTML 代码。
提前致谢!
参考代码:
import 'dart:convert';
import 'package:file_picker/file_picker.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
import 'package:html_editor_enhanced/html_editor.dart';
import 'package:html_editor_enhanced/utils/pick_image.dart';
import 'package:path/path.dart' as p;
import 'package:flutter/material.dart';
import 'dart:html' as html;
import 'dart:js' as js;
import 'dart:ui' as …Run Code Online (Sandbox Code Playgroud)