dayjs 라이브러리를 활용하여 To Do List 만들기
Utility 부분
export const getDayText = (day) =>{
switch (day) {
case 0: return "일";
case 1: return "월";
case 2: return "화";
case 3: return "수";
case 4: return "목";
case 5: return "금";
case 6: return "토";
default: return ' ';
}
}
export const getDaycolor = (day) =>{
return day === 0 ?"#e67639": day === 6 ? "#5872d1" : "#2b2b2b";
}
flatList와 map()함수
const flatListRef = useRef(null);
const scrolltoEnd = () => {
setTimeout(() => {
flatListRef.current?.scrollToEnd({ animated: true });
}, 400);
}
<FlatList
showsVerticalScrollIndicator={false}
ref={flatListRef}
focusable={true}
style={{flex:1}}
ListHeaderComponent={Header}
data={filteredTodoList}
renderItem={renderItem}
removeClippedSubviews={false}
/>
<View style={{flexDirection:"row"}}>
{[0,1,2,3,4,5,6].map((day)=>{
const datetext = getDayText(day);
return(
<Column text={datetext} color={getDaycolor(day)} opacity={1} key={`day-${day}`} disabled={true}/>
)
})}
</View>
const todolistkey ="todolistkey";
AsyncStorage.setItem(todolistkey,JSON.stringify(newtodolist));
const init = async() =>{
const result = await AsyncStorage.getItem(todolistkey);
if(result){
const newtodolist = JSON.parse(result);
console.log('newTodoList',typeof newtodolist , newtodolist);
setTodolist(newtodolist);
}
}
아주 유용한 정보네요!