javascript 如何关闭相机灯(手电筒)?

jyztefdp  于 6个月前  发布在  Java
关注(0)|答案(1)|浏览(89)

我正在创建一个应用程序来读取条形码。我使用QuaggaJS作为条形码阅读器库。我的问题是我可以打开手电筒,但我不能关闭它。

var track = Quagga.CameraAccess.getActiveTrack();
track.applyConstraints({advanced: [{torch:true}]}); //Torch is on
track.applyConstraints({advanced: [{torch:false}]}); //Torch still on :(

字符串
有办法关掉手电筒吗?

camsedfj

camsedfj1#

您正在使用两个单独的applyConstraints调用,而没有等待第一个调用完成。applyConstraints方法是异步的,并且第二个调用在第一个调用完成之前执行。要解决此问题,您可以使用then方法

var track = Quagga.CameraAccess.getActiveTrack();

track.applyConstraints({
        advanced: [{
            torch: true
        }]
    })
    .then(function() {
        // Torch is on
        console.log('Torch turned on successfully');

        // Now, turn off the torch
        return track.applyConstraints({
            advanced: [{
                torch: false
            }]
        });
    })
    .then(function() {
        // Torch is off
        console.log('Torch turned off successfully');
    })
    .catch(function(error) {
        console.error('Error applying constraints:', error);
    });

字符串

相关问题