From 3083ea8dcb3e5c2f2327a5bac0a5371efc7c3171 Mon Sep 17 00:00:00 2001 From: waruneeta Date: Wed, 15 Nov 2023 16:03:02 +0700 Subject: [PATCH] change camera devices & import path --- src/main.ts | 8 ++++---- src/plugins/axios.ts | 2 +- src/plugins/keycloak.ts | 4 +++- src/views/SampleCamera.vue | 31 ++++++++++++++++++++++++------- 4 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/main.ts b/src/main.ts index c99174c..ba1a714 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,12 +1,12 @@ import { createApp, defineAsyncComponent } from 'vue' -import App from './App.vue' -import './registerServiceWorker' -import router from './router' +import App from '@/App.vue' +import '@/registerServiceWorker' +import router from '@/router' import { createPinia } from 'pinia' import { Quasar, Dialog, Notify, Loading } from 'quasar' import '@vuepic/vue-datepicker/dist/main.css' -import quasarUserOptions from './quasar-user-options' +import quasarUserOptions from '@/quasar-user-options' import 'quasar/src/css/index.sass' import th from 'quasar/lang/th' diff --git a/src/plugins/axios.ts b/src/plugins/axios.ts index 79bba4e..3ed45c0 100644 --- a/src/plugins/axios.ts +++ b/src/plugins/axios.ts @@ -2,7 +2,7 @@ import axios from "axios" import config from "process" // import { dotnetPath } from "../path/axiosPath"; // import { getToken } from "@baloise/vue-keycloak"; -import keycloak from "../plugins/keycloak" +import keycloak from "@/plugins/keycloak" const axiosInstance = axios.create({ withCredentials: false, diff --git a/src/plugins/keycloak.ts b/src/plugins/keycloak.ts index 7b7c689..d04ef7f 100644 --- a/src/plugins/keycloak.ts +++ b/src/plugins/keycloak.ts @@ -17,7 +17,9 @@ const initOptions = { const keycloak = new Keycloak(initOptions); -keycloak.onAuthSuccess = () => {}; //เพิ่มlogin สำเร็จจะมาทำฟังก์ชันนี้ +keycloak.onAuthSuccess = () => { + //เพิ่มlogin สำเร็จจะมาทำฟังก์ชันนี้ +}; await keycloak.init({ onLoad: "check-sso", checkLoginIframe: false }); //ทำการ connect keycloak export default keycloak; diff --git a/src/views/SampleCamera.vue b/src/views/SampleCamera.vue index 22af5fe..04e3d49 100644 --- a/src/views/SampleCamera.vue +++ b/src/views/SampleCamera.vue @@ -2,19 +2,33 @@ import Camera from 'simple-vue-camera' import { ref } from 'vue' -const camera = ref>(); - +const camera = ref>() const cameraIsOn = ref(false) +const deviceCamera = ref() -const cameraOff = () => { - cameraIsOn.value ? camera.value?.stop() : camera.value?.start() +const cameraOff = async () => { + // change camera device + if (cameraIsOn.value) { + camera.value?.stop() + } else { + await camera.value?.start() + changeCamera() + } cameraIsOn.value = !cameraIsOn.value } +// change camera device +const changeCamera = async () => { + const devices: any = await camera.value?.devices(['videoinput']) + const device = await devices[0] + camera.value?.changeCamera(device.deviceId) + deviceCamera.value = devices +} + // Use camera reference to call functions const takePicture = async () => { const imageBlob = await camera.value?.snapshot( - { width: 640, height: 480 }, + { width: 640, height: 640 }, 'image/png', 0.5 ) @@ -25,8 +39,8 @@ const takePicture = async () => {