与JS交互

   在很多场合是需要访问Html页面的Js代码的.所以咱们得这么做:

   1:pubspec.yaml配置文件里添加js类库:

  ①找到Dependencies那一项,然后点击Add

  ②在对话框中输入js

  ③点击右上角的RunPub install安装类库,请检查类库是否已经完成

        点击package下是否生成了一些包,其中有一个就是js,有则成功了.

    2: 在main主文件中,尝试使用js

try{

    js.context.alert("HelloDart from js");

  }catch(e){

    window.alert(e);

  }

   点击运行, 弹出的对话框并不是HelloDart,而是Cannot get JavaScript context out of scope. 意思是说无法获得js,上下文不在这个域里.

 也就是说这货要在域里才能访问类库.于是:

  

 try{

    js.scoped((){

      js.context.alert("HelloDart from js");

    });

  }catch(e){

    window.alert(e);

  }

   3: 测试成功之后, 试试访问html页面里的js吧:

  ①:

  <script>

        function hello(){

          return "Hello";

        } 

     </script>

  ②将main里替换成

try{

    js.scoped((){

      window.alert(js.context.sum());

    });

  }catch(e){

    window.alert(e);

  }

        

原文地址:https://www.cnblogs.com/mohe/p/2957943.html