Javascript 用于HTML和JS的颤振Web插件
我找不到FlitterWeb的插件html和js。我的目的是打开相机拍摄一张照片。但它正在研究颤振网络。我编写了html和js相机代码。但它无法在Flatter Web应用程序上运行。我尝试了Flitter_html插件。但在ChromeWeb模拟器中只有几行毫无意义的代码。请帮助我或建议我其他插件Javascript 用于HTML和JS的颤振Web插件,javascript,html,flutter,flutter-web,Javascript,Html,Flutter,Flutter Web,我找不到FlitterWeb的插件html和js。我的目的是打开相机拍摄一张照片。但它正在研究颤振网络。我编写了html和js相机代码。但它无法在Flatter Web应用程序上运行。我尝试了Flitter_html插件。但在ChromeWeb模拟器中只有几行毫无意义的代码。请帮助我或建议我其他插件 import "package:flutter/material.dart"; import 'package:flutter_html/flutter_html.dart';
import "package:flutter/material.dart";
import 'package:flutter_html/flutter_html.dart';
class kamera extends StatefulWidget {
@override
_kameraState createState() => _kameraState();
}
class _kameraState extends State<kamera> {
@override
Widget build(BuildContext context) {
return Html(data:
"""
<video id="video" width="640" height="480" autoplay></video><br>
<button id="snap">Snap Photo</button><br>
<canvas id="canvas" width="640" height="480"></canvas><br>
<script>
var video = document.getElementById('video');
// Get access to the camera!
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
// Not adding `{ audio: true }` since we only want video now
navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
//video.src = window.URL.createObjectURL(stream);
video.srcObject = stream;
video.play();
});
}
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
var video = document.getElementById('video');
// Trigger photo take
document.getElementById("snap").addEventListener("click", function() {
context.drawImage(video, 0, 0, 640, 480);
});
</script>
""");
}
}
导入“包装:颤振/材料.省道”;
导入“package:flatter_html/flatter_html.dart”;
类kamera扩展了StatefulWidget{
@凌驾
_Kameratate createState()=>\u Kameratate();
}
类_kameratate扩展状态{
@凌驾
小部件构建(构建上下文){
返回Html(数据:
"""
快照照片
var video=document.getElementById('video'); //接近摄像机! if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){ //不添加“{audio:true}”,因为我们现在只需要视频 navigator.mediaDevices.getUserMedia({video:true})。然后(函数(流){ //video.src=window.URL.createObjectURL(流); video.srcObject=流; video.play(); }); } var canvas=document.getElementById('canvas'); var context=canvas.getContext('2d'); var video=document.getElementById('video'); //触发拍照 document.getElementById(“snap”).addEventListener(“单击”,函数)(){ drawImage(视频,0,0,640,480); }); """); } }