javascript 用于按下单按钮和双按钮的Flic按钮。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 用于按下单按钮和双按钮的Flic按钮。相关的知识,希望对你有一定的参考价值。

import {
    BUTTON_DOWN,
    doublePressAction,
    singlePressAction,
} from './actions'

const timeLimit = 300

let startTime = Date.now()
let timeoutId = 0

const isWithinTimeLimit = () => Date.now() - startTime < timeLimit

const handleButtonPress = buttonState => {
    if (buttonState !== 'ButtonDown') {
        return
    }

    if (isWithinTimeLimit()) {
        clearTimeout(timeoutId)
        startTime = 0

        doublePressAction()
    }

    startTime = Date.now()
    timeoutId = setTimeout(singlePressAction, timeLimit)
}

const listenForButtonPress = bluetoothAddress => {
    new FlicConnectionChannel(bluetoothAddress)
    .on('buttonUpOrDown', handleButtonPress)
}

以上是关于javascript 用于按下单按钮和双按钮的Flic按钮。的主要内容,如果未能解决你的问题,请参考以下文章