react 要如何在dangerouslySetInnerHTML里面调用onclick

handleClick(){
        console.log('handleClick');
    }

    render() {
        let callhtml = `<div className="content-pop">
                      <p>test</p>
                      <div onClick={e => this.handleClick(e)}>确认</div>
                  </div>`;
        return ( 
            <div className="lottery-pop" dangerouslySetInnerHTML={{__html: callhtml }}>
                  
            </div>
        );
    }

callhtml : 将被改成组件的prop

这样子调用,无法调用onClick

图片描述

阅读 5.2k
2 个回答

dangerouslySetInnerHTML 里的html不受react管理你只能在setState的回调里去获取dom来绑定事件

为什么要用dangerouslySetInnerHTML呢?这是一个问题。我们不允许使用这个属性

推荐问题