Flutter web javascript文件集成
Posted
技术标签:
【中文标题】Flutter web javascript文件集成【英文标题】:Flutter web javascript file integration 【发布时间】:2021-09-05 11:09:51 【问题描述】:我正在处理这个项目,其中已经有一些文件可以从套接字压缩数据。但不幸的是,这些文件是用 javascript 编写的。我目前已经与 Flutter Web 上的 WebSocket 建立了连接。有没有办法在 Flutter 上导入 javascript 文件以使用其中的方法。
【问题讨论】:
这能回答你的问题吗? How to use a JS library and a JS function in a Flutter mobile app? 【参考方案1】:我假设您想要流式传输数据。如果情况并非如此,而您宁愿进行一次性通话,请忽略我关于 StreamChannel
的 cmets 并使用 MethodChannel
。
您的问题的解决方案是将逻辑添加到插件并通过StreamChannel
调用它
https://api.flutter.dev/flutter/package-stream_channel_stream_channel/StreamChannel-class.html
为了做到这一点:
-
使用 Flutter cli 创建一个插件(它可以在您现有的项目中,也可以将其设为单独的 git repo)
在您的
pubspec.yaml
中导入新创建的插件
在两端(flutter 和 js)为您的逻辑添加句柄
您可以在这里找到更具体的代码示例说明:https://medium.com/flutter/how-to-write-a-flutter-web-plugin-part-2-afdddb69ece6
它将引导您完成插件设置,只需将 MethodChannel
替换为 StreamChannel
。
【讨论】:
我只需要能够在 Flutter Web 上使用这 3 个 js 文件。是否可以导入它们。 您可能希望在 index.html 中导入这些文件并执行我在回答中概述的步骤以上是关于Flutter web javascript文件集成的主要内容,如果未能解决你的问题,请参考以下文章
已部署的 Web 应用程序仍会在 Chrome javascript 控制台 Flutter 中打印所有注释掉的打印语句