React/이론
화면 출력
2주녘
2023. 8. 30. 20:10
반응형
들어가기 전에
컴포넌트 파일에서 웹브라우저 화면에 표시되는 영역은 함수의 return 값 아래 부분에 작성해주어야 화면에 정상적으로 출력이 됩니다.
function Home() {
// TODO: 변수를 정의하는 곳 : 여기
let array = ["a", "b", "c"]; // 일반 변수
// 리액트 특징 : 변수값 + html 태그를 같이 사용이 가능함(JSX 표현식)
let input = <b>문자열 출력되나요?</b>;
// TODO: 함수를 정의하는 곳 : 여기
// 함수선언식 : function 함수명() {}
// 함수표현식 : let 함수명 function (){};
// 화살표함수 : let 함수명 () => {}
// 화살표함수 단축키 : nfn
const testFunc = () => {
return "함수입니다";
}
// 클릭이벤트 함수
const myClick = () => {
alert("클릭했어요");
}
// TODO: HTML 태그 + JSX 표현식{} : return 안에 코딩함
// TODO: return : 웹브라우저 화면에 표시되는 영역
return (
<div>
.....이곳에 작성!
</div>
)
}
export default Home
화면에 출력이 가능한 것들
{/* TODO: 문자열 출력 : OK */}
{/* 사용법 : {"문자열"} */}
{"문자열 출력되나요!!!"}
<br/>
{/* TODO: 변수에 저장된 html태그 + 문자열 출력 : OK */}
{/* 사용법 : {변수명} */}
{input}
<br/>
{/* TODO: html 태그 : OK */}
{<b>이것도 출력될까요?</b>}
<br/>
{/* TODO: 숫자출력 : OK */}
{1}
<br/>
{1 * 2 + 3 - 2}
<br/>
{/* TODO: 문자열 붙이기 : + : OK */}
{"abc" + "가나다"}
<br/>
{/* TODO: JSX 표현식 : {<태그>{문자열}</태그>} : OK */}
{<b>{"안녕하세요"}</b>}
<br/>
{/* TODO: 배열 출력 : OK */}
{["가", "나", "다"]}
<br/>
{[1,2,3]}
<br/>
{array}
<br/>
{/* TODO: 함수 출력 : OK */}
{/* 함수의 사용 : 함수명() */}
{testFunc() + " 이것도 될까요?"}
<br/>
{/* TODO: 3항 연산자 : 조건식(축약형) : OK */}
{/* 사용법 : (조건식==true)? 참:거짓; */}
{true? "true":"false"}
<br/>
{false? "true":"false"}
<br/>
{/* TODO: HTML 태그 속성의 값으로 {} 넣어보기 : OK */}
<br/>
<button onClick={myClick}>클릭하세요</button>
<br/>
{/* TODO: 자바스크립트 내장함수 : OK */}
{console.log("이것도 출력될까요?")}
<br/>
{/* 오늘 요일(1 ~ 7) new Date() */}
{new Date().getDay()}
<br/>
{new Date().getFullYear() + "년"}
<br/>
{(new Date().getMonth()+1) + "월"}
<br/>
화면에 출력하지 못하는 것들
아래의 내용들은 중괄호{ } 안에 입력하여도 화면에 출력이 안되며 오류가 발생합니다.
{/* 화면에 출력 안되는 것 */}
{/* ------------------------------------------------------ */}
{/* TODO: boolean : 참/거짓 */}
{/* 해결책 : 참/거짓을 문자열로 변경하여 출력 */}
{true}
<br/>
{/* TODO: 객체 출력, 에러 발생*/}
{/* 해결책 : 객체 -> 문자열로 변경해서 출력 */}
{/* {{name:"홍길동", email:"hong@naver.com"}} */}
<br/>
{/* TODO: 조건문 if, 에러 발생 */}
{/* 해결책 : 삼항연산자 사용 */}
{/* {if(true){return "true"}} */}
{/* TODO: 반복문 for, 에러 발생 */}
{/* 해결책 : map() 함수 가능 */}
{/* {for(let i = 1; i<2 i++){console.log("aaaa")}} */}
반응형