Posts
Q&A
์๋ ํ์ญ๋๊น ์ด๋ฒ์ ์๊ฐ์ ํ๊ฒ๋ ์ง์ฅ์ธ ์ ๋๋ค
์ ๊ฐ ๋ฐฉ๊ธ ๋จ๊ธด ์ง๋ฌธ๊ณผ ๋๊ฐ๋ค์. ์๋ง ๊ฐ์๊ฐ ์ข ์ค๋๋์ ๊ทธ๋ฌ์ง ์์๊น ์๊ฐ๋๋ค์. ์์ฆ์ ๋ค ํ ์ ์ฐ๋๋ฐ์. ์ ๋ ๊ทธ๋ฅ ํ ์ผ๋ก ์งํํ๋ ค๊ณ ์.
- 0
- 1
- 186
Q&A
๋ฐฐํฌ ์๋ฒ ์๋ ๊ด๋ จ
ํน์ ๋ชฐ๋ผ ์ฝ๋๋ ๋จ๊น๋๋ค. ์ ํ ์๋ชป ๋๊ฑธ ๋ชป์ฐพ๊ฒ ๋๋ฐ ์ด์ํ๋ค์.. const fetcher = (url) => axios.get(url, { withCredentials: true }).then((response) => response.data); function Profile() { const [followersLimit, setFollowersLimit] = useState(3); const [followingsLimit, setFollowingsLimit] = useState(3); const { me } = useSelector((state) => state.user); const { data: followersData, error: followerError } = useSWR( `${backUrl}/user/followers?limit=${followersLimit}`, fetcher ); const { data: followingsData, error: followingError } = useSWR( `${backUrl}/user/followings?limit=${followingsLimit}`, fetcher ); useEffect(() => { if (!me?.id) { Router.push('/'); } }, [me?.id]); const loadMoreFollowings = useCallback(() => { setFollowingsLimit((prev) => prev + 3); }, []); const loadMoreFollowers = useCallback(() => { setFollowersLimit((prev) => prev + 3); }, []); if (!me) { return div>Loading my informationdiv>; } if (followerError || followingError) { console.error(followingError || followingError); return div>Error occurred while loading follow and following datadiv>; } return ( Head> title>My profile | Tweetertitle> Head> AppLayout> NicknameEditForm /> FollowList header="Following List" data={followingsData} onClickMore={loadMoreFollowings} loading={!followingsData && !followingError} /> FollowList header="Follower List" data={followersData} onClickMore={loadMoreFollowers} loading={!followersData && !followerError} /> AppLayout> ); } export const getServerSideProps = wrapper.getServerSideProps( (store) => async ({ req }) => { console.log('Profile: getServerSideProps start'); const cookie = req?.headers.cookie; axios.defaults.headers.Cookie = ''; if (req && cookie) { axios.defaults.headers.Cookie = cookie; } store.dispatch(loadMyInfoRequestAction()); store.dispatch(END); console.log('Profile: getServerSideProps end'); await store.sagaTask.toPromise(); } ); export default Profile;
- 0
- 2
- 587
Q&A
๋ฐฐํฌ ์๋ฒ ์๋ ๊ด๋ จ
์๋ฒ๋ฅผ ๊ฑ ์ผ๋จ๋๋ฐ ์๊ธฐ ์ค์ค๋ก ๊ณ์ ๋ญ๋ฅผ ๋ถ๋ฌ๋ค์ด๋๊ฑฐ ๊ฐ์๋ฐ.. ๊ณ์ monit์ ๋ก๊ทธ๊ฐ ์ฐํ๋ค์ ๋ชฐ๋๋ค๊ฐ ๋ค์ด์๋ณด๋ ๊ทธ๋ฌ๋๋ผ๊ณ ์. ํน์ ๋ฌธ์ ๊ฐ ์์๊น์? ํจํท์ด ๋น์ ์์ ์ผ๋ก ๋์๊ฑฐ ๊ฐ๊ธดํ๋ฐ์. ํ๋ก ํธ์๋ฒ์ ๋๋ค. (์ฌ์ง)
- 0
- 2
- 587
Q&A
className๊ณผ SSR
(์ฌ์ง) ์ด ์๋ฌ์ ๋๋ค. ์ฃผ๋ง์ ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค.. ์๋ฒ์ชฝ์๋ ๋ฐ๋ก ์๋ฌ๊ฐ ์๋๊ฑฐ๋ณด๋ .. ํ๋ก ํธ ๋ฌธ์ ๊ฒ ๋ค์.
- 0
- 2
- 257
Q&A
๋๋ณด๊ธฐ ๋ฒํผ ํด๋ฆญ ์ useSWR์ด ๋ค์ ํธ์ถ๋๋์???
์บ์ฑ ๊ธฐ๋ฅ์ด๋๊ฒ์ด ์ฃผ๊ธฐ์ ์ผ๋ก ์๋ฒ์ ์์ฒญํด์ ๊ฐ์ ๊ฐ๊ณ ์๋ ๊ทธ ๊ธฐ๋ฅ์ ๋ง์ํ์๋๊ฑด๊ฐ์? ์๋๋ฉด ๊ทธ๋ฅ url์ ๋ํด ์์ฒญํ ๊ฐ์ ๊ฐ๊ณ ์๋๊ฑธ ๋ง์ํ์๋๊ฑธ๊น์.
- 0
- 2
- 320
Q&A
์๋ก๊ณ ์นจ์ ์ ์ฉ์ด ์๋๋ ๋ฌธ์
๋ค์ ๋ค ๊น๊ณ ํ๋ ์๋๋ค์. ๋ฌด์์ธ๊ฐ๊ฐ ์๋ชป๋ฌ์๋ ๋ด ๋๋ค. ๋ก๊ทธ์ธ ์ํ์์ signup์ผ๋ก ๊ฐ ๊ฒฝ์ฐ signup ํ์ด์ง์์ ํ ๋ช์ด๊ฐ ์๋ค๊ฐ home์ผ๋ก ๊ฐ์ง๋๋ฐ ์ด๊ฑด ๋ฐฐํฌํ๊ธฐ์ ์๋ ์๋๊ฐ ๋๋ ค๋ณด์ธ๋ค๊ณ ๋ง์ํ์ จ๋๋ฐ ๊ทธ ํ์์ด๊ฒ ์ฃ ? ๋ฆ์ ์๊ฐ์๋ ๋ต๋ณ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
- 1
- 3
- 426
Q&A
์๋ก๊ณ ์นจ์ ์ ์ฉ์ด ์๋๋ ๋ฌธ์
๋น๋๊ฐ ๊ผฌ์๋์ง ์ด์ํด์ ธ์ ์ด๋ฒ ๊ฐ์์์ ํ๋ ์๋ฒ์ฌ์ด๋ ๋ ๋๋ง ํ์ผ .babelrc, _document.js ์น๋ค ์ง์ฐ๊ณ ๋ ธ๋๋ชจ๋, package-lock.json ์ง์ฐ๊ณ ๋ค์ ๊น์๋๋ฐ SSR ์ ์ฉ ์ํ๊ณ ๋ CSS๊ฐ ๋ฐ๋ก ์ ์ฉ๋๋ค์... ์ด์ํ์ง๋ง.. ํด๊ฒฐ๋๊ฑด์ง ํ ๋ฒ ๊ฐ์ ์ฝ๋ ๋ค์ ๋ฃ์ด๋ด์ผ๊ฒ ๋ค์.
- 1
- 3
- 426
Q&A
TypeError: nextCallback is not a function (next-redux-wrapper 7.0)
๋ฌธ์๋ฅผ ๋ค์ ๋ณด๊ณ ํด๊ฒฐํ์์ต๋๋ค.. ์์ ์๋ชป ์ค์ ํด๋จ๋ค์. ํน์ ๋ฌธ์ ์์ผ์ ๋ถ ์ฐธ๊ณ ํ์ธ์. export const getServerSideProps = wrapper.getServerSideProps( (store) => async () => { // ์๋ก๊ณ ์นจ์ ๋ก๊ทธ์ธ ์ ์ง๋ฅผ ์ํ dispatch store.dispatch(loadMyInfoRequestAction()); store.dispatch(loadPostsRequestAction()); store.dispatch(END); await store.sagaTask.toPromise(); } );
- 11
- 6
- 1.2K
Q&A
TypeError: nextCallback is not a function (next-redux-wrapper 7.0)
๋ง์ํด์ฃผ์ ๋ฐ๋ก ์ ์ฉํ๋๋ฐ data๋ฅผ ๊ฐ์ ธ์ค์ง ๋ชปํ๋ค์. export const getServerSideProps = wrapper.getServerSideProps((store) => { async () => { // ์๋ก๊ณ ์นจ์ ๋ก๊ทธ์ธ ์ ์ง๋ฅผ ์ํ dispatch store.dispatch(loadMyInfoRequestAction()); store.dispatch(loadPostsRequestAction()); store.dispatch(END); await store.sagaTask.toPromise(); }; });
- 11
- 6
- 1.2K
Q&A
์น์ฌ์ดํธ ์ ์
ํธ์คํ ์ ์ฌ์ฉํ์๋ฉด ํธ์คํ ์์ ์์์ package.json์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ ์ค์นํด์ค๋๋ค. ์ฆ, github์ ์ฌ๋ฆฌ์๋๊ฑฐ ์ฒ๋ผ ํ์ผ์ ๋ฐฐํฌํ์๋ฉด ์์์ ๋๋๊ฑฐ์ฃ . ํ์ง๋ง, ์ง์ ์๋ฒ๋ฅผ ์ปดํจํฐ์์ ๊ฐ์ธ์๋ฒ๋ก ๊ตฌ๋ํ์๋๊ฑฐ๋ฉด ์ค์น๊ฐ ๋์ด ์์ด์ผ๊ฒ ์ฃ ?
- 0
- 2
- 250