javascript Flutter WebView中的类型脚本

2lpgd968  于 2022-12-21  发布在  Java
关注(0)|答案(1)|浏览(146)

我可以在FlutterWebView中运行TypeScript吗?当在WebView中加载一个网站时,我需要运行TypeScript,这在Flutter中是可能的。我面临着加载时运行视频的问题,所以我需要从应用程序手动运行它。

WebView(
    initialUrl: privacyUrl,
    javascriptMode: JavascriptMode.unrestricted,
    gestureNavigationEnabled: false,
    debuggingEnabled: true,
    onWebViewCreated: (controller) {
      webController = controller;
    },
    onPageFinished: (url) {
      // This is JS code get from web. so i need corresponding TypeScript method.
      webController.runJavascriptReturningResult(
          "javascript:(function() { document.getElementById('spot-video').play(); })()");
    },
  ),
zxlwwiss

zxlwwiss1#

我要说的是,Typescript需要编译成Javascript才能在Web上运行,即使是在Typescript目标(如Web)上,编写Typescript代码并试图直接运行它也会失败(没有编译成Javascript)。网站和浏览器..知道Javascript,而不是Typescript。
对于您的情况,我认为最好的解决方案是在一个单独的项目中编写Typescript代码,然后确保它可以工作,然后将其编译为Javascript并在runJavascriptReturningResult方法中使用。
由于runJavascriptReturningResult接受String,因此您可以选择使用第三方Typescript编译器进行编译。

相关问题