ユーザが選択したフィルタに基づいてtodolistを表示しようとしています。現時点では 、私は完了を示すためのコードを書いただけです。 が動作していません。フィルタベースのデータを表示するtodoリスト
見てみると、それは
import React,{Component} from 'react';
import './reminderListStyles.css';
import Filters from './Filters';
class ReminderList extends Component{
constructor(){
super();
this.state={
filter:"completed"
}
this.getFilter=this.getFilter.bind(this);
}
getFilter(x){
this.setState({
filter:x
});
//alert(x);
}
render(){
return(
<div>
<ul>
{this.props.reminder.map((item)=>{
if(this.state.filter==='show_completed'){
if( item.completed){
return <li key={item.id}
style={{textDecoration: item.completed? 'line-through':'none'}}
onClick = {()=>{this.props.onToggle(item.id)}} >
< input type="checkbox" checked={item.completed} />{item.text}</li>
}
}
return <li key={item.id}
style={{textDecoration: item.completed? 'line-through':'none'}}
onClick = {()=>{this.props.onToggle(item.id)}} >
< input type="checkbox" checked={item.completed} />{item.text}</li>
})}
</ul>
<Filters reminders={this.props.reminder}
filterState={this.getFilter}
/>
</div>
)
}
}
export default ReminderList;
あなたは何を意味しますか問題は何か、状態は「完了」に設定されており、あなたは「show_completed」と比較しています。どのように正しく動作することを期待してください –
ああ、はい!初期状態は完了に設定されます。 それを変更してみましょう。 しかし、私はそれが動作していないと言っている理由は、 それはまだ表示されていると両方を完了していないということです。 ノー完全 – faraz