SubmittingButton.js 1.4 KB
import React,{PropTypes} from 'react';
import ReactDOM from 'react-dom';   
import cx from 'classnames';
import s from './buttons.scss'; 


class SubmittingButton extends React.Component {
    constructor(props) {
        super(props); 
        this.clickBtn=this.clickBtn.bind(this);
    }
    static propTypes = {    
        lable:PropTypes.string,
        onClick:PropTypes.func,
        submitting:PropTypes.bool,
        block:PropTypes.bool
    }  
    static defaultProps={  
        lable:'', 
        block:false,
        submitting:false,
        onClick:()=>{

        }
    }  
    clickBtn(){
        const {submitting,onClick}=this.props;
        if(!submitting)
            onClick();
    }
    componentDidMount(){  
    }  
    componentWillReceiveProps(nextProps){   
    }
    componentDidUpdate(prevProps,prevState){  
    }
    componentWillUnmount() {  
        
    }  
    render(){      
        const {lable,submitting,block}=this.props;
        const blockStyle=block?{width:'100%'}:{null};
        return (
            <a className={cx(s.success_btn,submitting?s.disabled:null)} style={blockStyle} onClick={this.clickBtn} > 
                {lable}
                {submitting?<i style={{width:'20px'}} className={cx('kr_icon','kr_icon-spin')}>&#xe65a;</i>:<i style={{width:'20px'}}  className={cx('kr_icon')}>&#xe614;</i>}
            </a>
        )
    }
}



export default SubmittingButton;