标题flutter中用flutter_inappbrowser嵌入Vue项目,无法加载iframe页面
再项目开发中遇到一个问题,需要在flutter项目中的一块区域放k线图,由于flutter做股票那样的k线图难度挺大,也没有找到合适的插件,所以最后决定用webview嵌入一个html页面进来。
在嵌入页面的时候一切正常,最后加上数据请求的时候发现K线图并没有渲染出来。。。
后来发现html页面里面是用的iframe嵌套的K线图,,,
解决办法:
在flutter里面用插件起一个本地服务
- 先加入依赖
dependencies:
...
jaguar: ^2.2.1
jaguar_flutter_asset: ^2.2.0
...
- 在dart文件里面启动服务
void main() async {
final server = Jaguar(port:9000);
server.addRoute(serveFlutterAssets());
await server.serve(logRequests: true);
print('server=$server');
server.log.onRecord.listen((r){
print(r);
});
runApp(MyApp());
}
- 引入html页面地址变更
Center(
child: InAppWebView(
initialUrl: 'http://localhost:9000/kline/index.html', // 本地服务
onLoadStop:
(InAppWebViewController controller, String url) {
controller.injectScriptCode("window.appSendJs('ETHBTC')"); // 传参给html
}
)
)
版权声明:本文为luck_yangl原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。