美文网首页
做一个复用的开发组件 modal弹出框

做一个复用的开发组件 modal弹出框

作者: 小白修仙路 | 来源:发表于2019-06-12 11:03 被阅读0次

    使用弹出框组件

    <div onClick={this.handleClick2}>弹出modal22</div>

          <NewMode

            data={<p>测试modal22</p>}

            title='modal222'

            visible={this.state.wtcgVisible2}

            modalProps={{

    on:{

      onOk: (data) =>{ this.onOkFun2(data) },

      onCancel:(data) =>{ this.onCancelFun2(data) }

    }

    }}

     />

    开发弹出框组件

    handleEvent = (args) =>{

    // 传入事件处理

    let newRows = {};

    let handlersObj = this.props.modalProps.on;

    let handlers = Object.keys(handlersObj);

    let self = this;

    handlers.forEach(name =>{

      if(['onChangeHandle'].indexOf(name) === -1){

      // 非dom事件过滤

      newRows[name] = (e) =>{

        handlersObj[name]({e, ...args});

        self[`${name}Handle`] && self[`${name}Handle`](args);

    }

    }

    });

    return newRows;

    };

    render(){

    return(

      <div>

      <Modal

        title={this.props.title}

        visible={this.props.visible}

        closable={false}

        centered={true}

        okText='确认'

        onCancelText='取消'

        className={'titleCenter oneButton'}

        {...this.handleEvent({data:'这是mode'})}

    >

        {this.props.data}

      </Modal>

      </div>

    )

    }

    相关文章

      网友评论

          本文标题:做一个复用的开发组件 modal弹出框

          本文链接:https://www.haomeiwen.com/subject/biprxctx.html