UNPKG

cione-comp-lib

Version:

`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`

49 lines (48 loc) 1.04 kB
import { ref, onBeforeUnmount } from "vue"; import { createBell, VuenseeRFB } from "../utils/novnc.mjs"; /* * vuensee * @author Anders Evenrud <andersevenrud@gmail.com> * @link https://github.com/andersevenrud/vuensee * @license MIT */ const useRFB = ({ root, bellSound }) => { const bell = createBell(bellSound); const rfb = ref({}); const reconnectTimeout = ref(null); onBeforeUnmount(() => { try { if (rfb.value.disconnect) { rfb.value.disconnect(); } } catch (e) { console.warn(e); } clearTimeout(reconnectTimeout.value); }); const connect = (options, bindings) => { rfb.value = VuenseeRFB.connect({ root: root.value, options, bindings }); }; const reconnect = (delay, cb) => { reconnectTimeout.value = setTimeout(cb, delay); }; const disconnect = () => { clearTimeout(reconnectTimeout.value); rfb.value.disconnect(); }; return { rfb, bell, connect, reconnect, disconnect }; }; export { useRFB };