在很多场合是需要访问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);
}