Ho alcuni JS come di seguito. Trovo che se rimuovo mdl-js-layout
il pulsante onClick
funziona. Altrimenti fallisce. Perché potrebbe essere? Ho già fatto componentHandler.upgradeDom()
ReactJS e Google MDL Button onClick non funziona
'use strict';
module.exports = React.createClass({
componentDidMount: function() {
console.log('update')
componentHandler.upgradeDom();
},
addExpense: function() {
console.log('add expense');
},
render: function() {
return (
<div ref="appLayout" className="mdl-layout mdl-js-layout mdl-layout--fixed-drawer">
<div className="mdl-layout__drawer">
<span className="mdl-layout-title">Expenses</span>
<nav className="mdl-navigation">
<a className="mdl-navigation__link" href="#">Expenses</a>
<a className="mdl-navigation__link" href="#">Settings</a>
</nav>
</div>
<main className="mdl-layout__content">
<div className="page-content">
<div className="mdl-grid">
<div className="mdl-cell mdl-cell--12-col">
<button ref="btnAddExpense" onClick={this.addExpense} className="mdl-button mdl-js-button mdl-button--raised mdl-button--accent">
Add Expense
</button>
</div>
</div>
</div>
</main>
</div>
);
}
});
Se guardo negli strumenti Reagire debugger, posso effettivamente vedere l'onClick dovrebbe essere vincolato?
https://github.com/tleunen/react-mdl/issues/254 - potrebbe risultare utile; Assicurati che il gestore di clic sia una chiusura con l'oggetto "questo" corretto. –