私は以下のようなJSを持っています。 mdl-js-layout
を削除すると、ボタンのonClick
が機能することがわかります。それ以外の場合は失敗します。これはなぜでしょうか?私はすでにのonClickが拘束されることになっている私が反応デバッガツールに見れば、私が実際に見ることができますcomponentHandler.upgradeDom()
ReactJS&Google MDLボタンonClickが動作しない
'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>
);
}
});
をやっていますか?
https://github.com/tleunen/react-mdl/issues/254 - この情報が役立つ場合があります。クリックハンドラが正しい 'this'オブジェクトを含むクロージャであることを確認してください。 –