chained-function

0.5.0 • Public • Published

chained-function build status Coverage Status

NPM

Installation

npm install --save chained-function

Usage

let sum = 0;
const func = chainedFunction(
    function(val) {
        sum += val;
        console.log(sum); // 2
    },
    function(val) {
        sum += val;
        console.log(sum); // 4
    },
    function(val) {
        sum += val;
        console.log(sum); // 6
    }
);
 
func(2);

React

import React, { Component, PropTypes } from 'react';
import chainedFunction from 'chained-function';
 
class extends Component {
    static propTypes = {
        onClick: PropTypes.func
    };
    static contextTypes = {
        $parent: PropTypes.shape({
            onClick: PropTypes.func
        })
    };
 
    actions = {
        handleClick: (event) => {
        }
    }
 
    render() {
        const { onClick, ...props } = this.props;
        const parent = this.context.$parent;
 
        <a
            {...props}
            onClick={chainedFunction(
                this.actions.handleClick,
                onClick,
                parent && parent.onClick
            )}
        />
    }
}

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i chained-function

Weekly Downloads

31,936

Version

0.5.0

License

MIT

Last publish

Collaborators

  • cheton