debounceif

    1.0.4 • Public • Published

    debounceif

    DebounceIf a condition is met.

    Sample Usage

    TypeScript

    debounce(() => {
        console.log('Debounced after 1s!')
    }, 1000)
     
    let isLoading = true
    setTimeout(() => (isLoading = false), 5000)
     
    // Example using function
    let dots = ''
    debounceIf(
        () => {
            console.log('Debounced after condition is met!')
        },
        500,
        () => {
            dots += '.'
            if (dots.length > 3) {
                dots = '.'
            }
            console.log('Loading' + dots)
            return !isLoading
        },
    )
     
    // Example with class instantiation
    const debounceInst = new DebounceIf(() => {
        console.log('Debounced from DebouncedIf() instance after 2s!')
    }, 2000)
     
    debounceInst.debounce()

    HTML

    <input type="text" id="debounce" />
    <div id="suggestions"></div>
     
    <script>
        var exports = {}
    </script> 
    <script src="debounceIf.js"></script>
    <script>
        const words = ['world', 'wide', 'web']
        document.getElementById('debounce').onkeypress = event => {
            exports.debounce(() => {
                const search = event.target.value
                const suggestions = words
                    .filter(word => word.startsWith(search.toLowerCase()))
                    .sort()
                    .join('<br />')
                document.getElementById('suggestions').innerHTML = suggestions
            }, 500)
        }
    </script> 

    See tests/debounceIf.html to learn more about how to incorporate this into your project via HTML and JS or tests/usage.ts for an example on how to debounceIf with NodeJS and Typescript.

    Available Scripts

    In the project directory, you can run:

    npm run build

    Builds debounceIf.ts and tests/usage.ts into JS files for usage. usage.ts is a demo of the script being used in Typescript while tests/debounceIf.html provides a demonstration of usage within the browser.

    npm run test-usage

    Runs the sample usage.js file which should output a log in your console.

    Learn More

    You can learn more about the developer here.

    Install

    npm i debounceif

    DownloadsWeekly Downloads

    0

    Version

    1.0.4

    License

    MIT

    Unpacked Size

    18.3 kB

    Total Files

    10

    Last publish

    Collaborators

    • dancmox