flutter调用js代码

2,134 阅读1分钟

首先需要在pubspec.yaml中配置:

dependencies:
  js: ^0.6.1+1 #主要是指明这个,可以根据实际情况配置版本
  flutter:
    sdk: flutter

然后直接看代码,在lib包下的任意的目录新建一个dartjs.dart文件,代码如下:

import 'dart:js' as js;
void main() {
  //示例调用测试函数test.js
  print(js.context.callMethod("noparam")); //带参数
  print(js.context.callMethod("haveparam", ["hello world"]));//无参数
  //示例调用cryptUtil.js
  String cipher = js.context.callMethod("encryptByDES", ["hello world"]);
  print(cipher);
  print(js.context.callMethod("decryptByDES", [cipher]));
}

工程目录如下图所示,调用的关键在于web包下面的index.html和我们自己新建的js,什么意思呢,也就是说我们写的js必要在index.html中引入才能被调用到,引入的代码就忽略了,想调用什么别的包都可以的,例如jquery image.png 最后回到示例代码的第一行,这个import代码的意思是把web包下面的js文件夹下面的所有js引进来。这样问题就很明确了。

import 'dart:js' as js;