<input type="checkbox" checked={this.state.checked} onChange={this.checkedChangeHandler} />記住賬號</span> checkedChangeHandler: function(event) { this.setState({ checked: event.target.checked }); },
頁面有一個checkbox,默認選中,並且綁定了click事件。在事件的回調函數中使用event.target.checked檢查checkbox的最新值。
用戶通過鼠標點擊checkbox,在回調函數中,event.target.checked的值是false,沒問題。
在Jasmine中,如果用jQuery觸發click事件,在回調函數中,event.target.checked的值是true,回調函數執行完畢之后,checkbox才變成非選中的狀態。
解決辦法:
使用document.getElementById獲得checkbox,然后觸發click事件, 回調函數中就可以得到正確的值了。