svelte 및 Html5Qrcode를 사용한 간단한 qr/바코드 스캔
8172 단어 javascriptsvelte
모바일 브라우저를 사용하세요! Html5는 이제 그것을 지원합니다.
모바일 브라우저에서 demo을 엽니다. 크롬, 사파리, 파이어폭스 모두 저에게 효과적이었습니다!
솔직히, 나는 그것이 얼마나 쉬운 지 믿을 수 없었습니다! 코드를 확인하십시오.
<script>
import { Html5Qrcode } from 'html5-qrcode'
import { onMount } from 'svelte'
let scanning = false
let html5Qrcode
onMount(init)
function init() {
html5Qrcode = new Html5Qrcode('reader')
}
function start() {
html5Qrcode.start(
{ facingMode: 'environment' },
{
fps: 10,
qrbox: { width: 250, height: 250 },
},
onScanSuccess,
onScanFailure
)
scanning = true
}
async function stop() {
await html5Qrcode.stop()
scanning = false
}
function onScanSuccess(decodedText, decodedResult) {
alert(`Code matched = ${decodedText}`)
console.log(decodedResult)
}
function onScanFailure(error) {
console.warn(`Code scan error = ${error}`)
}
</script>
<style>
main {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 20px;
}
reader {
width: 100%;
min-height: 500px;
background-color: black;
}
</style>
<main>
<reader id="reader"/>
{#if scanning}
<button on:click={stop}>stop</button>
{:else}
<button on:click={start}>start</button>
{/if}
</main>
멋진 Html5Qrcode lib의 작성자에게 특별한 감사를 드립니다.
quagga에 대한 선외 가작 . 더 이상 적극적으로 유지 관리되지 않지만 활성 포크가 있습니다quagga2.
아사프! 읽어주셔서 감사합니다🥰
[업데이트]: 데모는 pwa가 아니지만, 자신의 프로젝트에 대한 pwa를 만들기로 결정하면 스캐너 라이브러리와 카메라 액세스가 작동합니다.
Reference
이 문제에 관하여(svelte 및 Html5Qrcode를 사용한 간단한 qr/바코드 스캔), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/myleftshoe/simple-qrbarcode-scanning-with-svelte-and-html5qrcode-1d59텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)