[ReactJS] 함수형 방식에서 버튼 클릭하여 컴포넌트 추가하기

개발/ReactJS 2021. 11. 1. 08:20

[추가하기] 버튼을 눌렀을 때, 컴포넌트를 추가해야 하는 일이 있었다. //Page.tsx export const Page = () => { const [story, setStory] = useState([]); const addStory = () => { setStory(story.concat()); }; return ( {story} { addStory(); }} /> ) 위와 같이 story를 array 형태의 state로 관리하여 버튼을 클릭했을 때, onClick 이벤트로 story state에 를 추가하는 함수인 addStory( )를 실행하는 방식으로 구현하였다.

.map( )안에 useQuery 사용 시 callback 에러 발생

개발/ReactJS 2021. 10. 30. 08:20

...(users?.map((user: User) => { const { data: userStories } = useQuery( `/admin/${user.id}/stories`, fetcher ); const { data: likes } = useQuery( `/admin/${user.id}/likes`, fetcher ); ------- 생략 -------- } 위와 같이 리턴받은 User타입의 배열을 .map()을 통해 userId별로 useQuery를 통해 api를 호출하려하였는데 callback안에서는 useQuery를 사용할 수 없다고 에러가 발생하였다. const [userId, setUserId] = useState(Number); const { data: users } = useQuer..

ValueError: script argument must be unicode. 해결

개발/Flask 2021. 10. 29. 08:20

test.sql 파일을 cursor가 utf-8 포맷으로 지정하지 않아서 unicode가 아니라고 valueError가 발생하였다. #before db_test.cursor().executescript(f.read()) #after db_test.cursor().executescript(f.read().decode('utf-8')) 위와 같이 f.read()뒤에 .decode('utf-8')을 추가하여 해결하였다.

Article Thumbnail
.ini 파일 KeyError 해결 방법

개발/Flask 2021. 10. 28. 08:20

config.ini와 같이 .ini 파일로 데이터베이스 환경변수를 관리하여 unittest를 하던 중, 위와 같이 KeyError가 발생하며 값을 읽어오지 못하는 일이 발생하였다. 원인 원인은 config.ini의 경로를 ../config.ini로 지정하고, basedir를 지정해주지않아서 실행하는 디렉토리에 따라 경로가 달라져 못 읽어오는 것 이었다. 해결방법 config.ini를 불러오는 코드의 윗 줄에 아래와 같이 basedir를 지정해주는 코드를 추가하면 정상적으로 test가 실행됨을 볼 수 있다. basedir = os.path.dirname(os.path.abspath(__file__)) os.chdir(basedir) config = configparser.ConfigParser() conf..

Article Thumbnail