我在旧的浏览器中遇到一个QR代码库(JSQR)的问题。当我开始扫描时,它会给出一条错误消息

"Uint8ClampedArray.from is not a function"
 source: file:///android_asset/www/js/libs/jsQR.js (143)


在第143行的文件中,代码如下:

this.zero = new GenericGFPoly_1.default(this, Uint8ClampedArray.from([0]));
this.one = new GenericGFPoly_1.default(this, Uint8ClampedArray.from([1]));


有谁知道如何解决此行或指向此行的替代方式。这是源代码:
https://github.com/cozmo/jsQR/blob/master/dist/jsQR.js

最佳答案

您可以将这些非常调用替换为new Uint8ClampedArray([0])new Uint8ClampedArray([1])。使用更好的浏览器支持,这将完全相同。



const a1 = Uint8ClampedArray.from([0]);
const a2 = new Uint8ClampedArray([0]);

console.log(a1);
console.log(a2);

const b1 = Uint8ClampedArray.from([1]);
const b2 = new Uint8ClampedArray([1]);

console.log(b1);
console.log(b2);





并且,如果您需要使用此方法的更多信息,可以尝试使用MDN上的incomplete polyfill

关于javascript - Uint8ClampedArray.from不是函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55016877/

10-11 13:54