首先需要在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](https://img-blog.csdnimg.cn/img_convert/21a1ab82c01db3af47dbbe344c25fb58.png#align=left&display=inline&height=406&margin=[object Object]&name=image.png&originHeight=812&originWidth=560&size=55062&status=done&style=shadow&width=280)
最后回到示例代码的第一行,这个import代码的意思是把web包下面的js文件夹下面的所有js引进来。这样问题就很明确了。
import 'dart:js' as js;