Open bzs5919 opened 4 years ago
a && b
의 경우 a
가 truthy 한 경우 b
의 값이 a&&b
의 값이 됩니다. 반대로 a
의 값이 falsy하면 a
의 값이 출력됩니다. 가령, false && "Hello" == false, true && "Hello" == "Hello" 가 성립합니다. (이는 logical and의 동작을 확장한 것입니다. a와 b가 bool일때를 생각해보세요.) 따라서, 위의 props.done && 'done'
표현식은 done이 true인 경우 뒤의 term인 'done'을. done이 false인 경우 그대로 false를 리턴하는 형태가 됩니다.echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
를 커맨드라인에 실행해보시고 다시 시도해보세요.<BrowserRouter>
로 감쌌는데, 사실 이 <BrowserRouter>
가 history
라는 키를 props에 전역적으로 넣어줍니다. 이런 react의 기능을 context라고 합니다.이렇게 inject된 context props를 확인할 방법으로, console.log나 alert를 이용해서 빈 component의 props를 보시면 되겠습니다.
답변 감사합니다. 1번 부분이 이해가 아직 안 됐는데, text ${props.done && 'done'}가 그러면 props.done이 true인 경우 'textdone'이 되고, props.done이 false인 경우 'text'가 되어야 할 것입니다. 그렇다면 className은 'text'거나 'textdone'이 될텐데, Toto.css파일에서 .Todo .text와 .Todo .done이 있고, .Todo .textdone이 있지는 않습니다. css파일은 js파일의 키들의 className을 주소로 폰트를 바꿔주는 것으로 알고 있는데, 제가 어디를 잘못 생각 하고 있는지 아직 모르겠습니다.
done이 true인 경우에는 "text done"이 됩니다. CSS className은 공백으로 구분(space-separated)되기 때문에 이 경우 className이 {"text", "done"}이 되어 .Todo .text와 .Todo .done이 둘다 적용 받는걸로 보시면 되겠습니다.
그렇군요 의문점이 해결됐습니다. 감사합니다!
안녕하세요. 랩수업 ppt를 따라 복습하다가 수업에서 놓쳤거나 궁금한 점들이 생겨 질문드립니다.
32페이지에서 {
text ${props.done && 'done'}
} 이라는 문구가 있습니다. css파일에서 보면 props.done이 참일 때는 className이 done이 되고, 아닐 때는 text가 되는 것 같은데, 정확히 어퍼스트로피가 어떤 역할을 하게 되는건지 궁금합니다.48페이지에서 2-way binding이 child component에서 parent component로 정보가 보내지는 것이라고 하는데, 46페이지의 예시에서는 input 태그의 value가 NewTodo 객체의 state를 변경시킵니다. 그렇다면 이 예시에서는 child component가 input 태그이고, parent component가NewTodo 객체를 의미하는 건가요?
52페이지에서 두 개의 Route 태그가 있는데, 하나는 exact render을 통해 표현되고, 나머지는 exact component를 통해 표현됩니다. 이 두 표현이 사실상 서로 같은 의미를 갖고, 아무거나 골라서 사용해도 되는 것 같은데, 제가 이해한 것이 맞나요?
yarn start로 서버를 실행?하고, 작업을 끝내고 싶으면 컨트롤C를 누르기만 하면 되는 건가요? 단순하게 컨트롤C를 누르고 다시 yarn start를 하면 아래와 같은 에러가 뜨고 서버가 실행되지 않습니다. 파일을 삭제했다가 휴지통에서 복원하고 다시 실행하면 다시 실행되긴 하는데, 파일의 내용을 수정해도 페이지에 적용이 되질 않습니다. 뭔가 제가 잘못 하고 있는 것 같습니다.
Starting the development server...
events.js:292 throw er; // Unhandled 'error' event ^
Error: ENOSPC: System limit for number of file watchers reached, watch '/home/junseokbang/swpp-react-tutorial/public/robots.txt' at FSWatcher.start (internal/fs/watchers.js:169:26) at Object.watch (fs.js:1422:11) at createFsWatchInstance (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:38:15) at setFsWatchListener (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:81:15) at FSWatcher.NodeFsHandler._watchWithNodeFs (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:233:14) at FSWatcher.NodeFsHandler._handleFile (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:262:21) at FSWatcher. (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:495:21)
at FSReqCallback.oncomplete (fs.js:169:5)
Emitted 'error' event on FSWatcher instance at:
at FSWatcher._handleError (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/index.js:260:10)
at createFsWatchInstance (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:40:5)
at setFsWatchListener (/home/junseokbang/swpp-react-tutorial/node_modules/chokidar/lib/nodefs-handler.js:81:15)
[... lines matching original stack trace ...]
at FSReqCallback.oncomplete (fs.js:169:5) {
errno: -28,
syscall: 'watch',
code: 'ENOSPC',
path: '/home/junseokbang/swpp-react-tutorial/public/robots.txt',
filename: '/home/junseokbang/swpp-react-tutorial/public/robots.txt'
}
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.