javascript - Stoppa växlingen av dragspelsrubrik vid knappklick


Jag har följande bootstrap-accordion i min tsx. Jag vill förhindra att knappen triggar toggle.

<div id="accordion">
    <div className="card">
        <div className="card-header" 
            id={this.props.collapseID} 
            data-toggle="collapse" 
            data-target={this.props.dataTargetID} 
            aria-expanded="true" 
            aria-controls="collapseOne">
            <div className="clearfix">
                <h4 className="mb-0">
                    <a href={URL} target="_blank">
                        <strong>
                            Accordion Title
                        </strong>
                    </a>
                    <div className="statusCircle"></div>
                </h4>
                <div className="btn-grp">
                    <Button type="button" className="btn btn-primary" caption="Deploy All Links" onClick={this.onButtonClick} />
                </div>
            </div>
            <i className="collapseIcon fa fa-chevron-right fa-1x" aria-hidden="true"></i>
        </div>
        <div id={this.props.contentID} className="collapse show" aria-labelledby={this.props.collapseID} data-parent="#accordion">
            <div className="card-body">
                //Content
            </div>
        </div>
    </div>
</div>

Från vad jag har läst online måste du göra event.stopPropagation för att förhindra att händelsen bubblar upp. Därför skrev jag denna funktion för min knappkomponent:

onButtonClick = (event: Event) => {
    event.stopPropagation();
}

Men detta verkar inte stoppa växlingen. Inte heller gör stopImmediatePropagation och preventDefault

Svar #1

@zerodarkthirty, använd följande definition för din onClick:

 onClick={() => this.onButtonClick}