1
我正在嘗試製作簡單的待辦事項應用程序。在此我想通過onClick函數從列表中刪除項目。 onClick按鈕返回名爲remove(i)的函數,刪除列表中的項目。但是我收到上面提到的錯誤。 的代碼如下:無法刪除反應中的列表項。錯誤顯示:Uncaught TypeError:無法讀取屬性'刪除'未定義
import React, { Component } from 'react';
import ReactDom from 'react-dom';
import logo from './logo.svg';
import './App.css';
class App extends Component {
constructor(){
super();
this.state={
todo:[]
};
};
entertodo(keypress){
var todo=this.refs.newtodo.value;
if(keypress.charCode == 13)
{
this.setState({
todo: this.state.todo.concat(todo)
});
this.refs.newtodo.value=null;
};
};
todo(data,i){
return (
<li key={data.id} index={i}>
<input type="checkbox"className="option-input checkbox"/>
<div className="item">
{data}
<button onClick={this.remove.bind(this)}className="destroy"></button>
</div>
</li>
);
};
remove(i){
var todo=this.refs.newtodo.value;
var deletetodo=this.state.todo.concat(todo)
deletetodo.splice(i,1);
this.setState({todo:deletetodo})
};
render() {
return (
<div>
<div className="lines"></div>
<div>
<input type="text" ref= "newtodo" onKeyPress={this.entertodo.bind(this)}className="inputext"placeholder='todos'/>
</div>
<div className="app">
<ul>
{this.state.todo.map(this.todo.bind(this))}
</ul>
</div>
</div>
);
}
}
export default App;
同樣的問題出現了,如果我嘗試調用一個函數用於對複選框後單擊strikeoff列表項。需要幫忙。
這工作拼接陣!謝謝 –
你可以請建議如何刪除複選框上的文本 –
onchange複選框只需添加一個樣式textDecoration:直通;在檢查複選框是否被選中之後。 –