inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전 자바스크립트

const, let

리액트 내에서 const질문입니다.

219

koko2

작성한 질문수 10

1

리액트 컴포넌트에서 상수변수로 사용시 최하단에 상수변수를 작성하였는데 Study() 함수내부의 for문에서 BOX_LIST를 어떻게 읽을수 있나요? 모듈번들링을 통해서 그 파일을 읽을수있는건가요..? 

import React, { useState, useRef } from "react";

export default function Study() {
const boxListRef = useRef({});
function onClick() {
let maxRight = 0;
let maxId = "";
for (const box of BOX_LIST) {
const ref = boxListRef.current[box.id];
if (ref) {
const rect = ref.getBoundingClientRect();
if (maxRight < rect.right) {
maxRight = rect.right;
maxId = box.id;
}
}
}
alert(`오른쪽 끝 요소는 ${maxId}`);
}
return (
<div>
<div
style={{
display: "flex",
flexWrap: "wrap",
width: "100vw",
height: "100%",
}}
>
{BOX_LIST.map(item => (
<div
key={item.id}
ref={ref => (boxListRef.current[item.id] = ref)}
style={{
flex: "0 0 auto",
width: item.width,
height: 100,
backgroundColor: "yellow",
border: "solid 1px red",
}}
>{`box_${item.id}`}</div>
))}
</div>
<button onClick={onClick}>오른쪽 끝 요소는?</button>
</div>
);
}

const BOX_LIST = [
{ id: 1, width: 70 },
{ id: 2, width: 100 },
{ id: 3, width: 80 },
{ id: 4, width: 100 },
{ id: 5, width: 90 },
{ id: 6, width: 60 },
{ id: 1, width: 120 },
];

es6 javascript

답변 1

0

이재승

안녕하세요
Study 함수 내부에서 BOX_LIST 에 접근할 때는 이미 BOX_LIST 의 값이 할당된 후입니다
그래서 BOX_LIST 값을 읽을 수 있습니다. 제가 질문을 제대로 이해한건지 모르겠네요;;;
참고로 함수에서 외부 변수에 접근하는 경우에 대한 자세한 설명은 lexcial environment 부분에서 확인하실 수 있습니다.

[해결됨]윈도우즈 환경에서 타입 스크립트 파일이 실행이 안됩니다.

1

12

5

4강 카드뉴스 자동화 자료가 안보입니다!!

0

19

1

윈도우즈 환경에서 진행중입니다.

0

18

2

4강 카드뉴스 자동화 자료

4

57

1

라이브 강의 영상 녹화본이 있을까요?

0

63

1

인증이 늦었습니다ㅜㅜ 확인부탁드립니다

0

57

1

스웨거 접속이 안되는데 확인 부탁드립니다.

0

38

1

yield 입력값

0

412

1

화살표함수에서 아규먼츠를 사용할수없어서 매개변수를 사용하라고 하셨는데..

0

335

1

실전자바스크립트 var문제점

0

315

1

강의 자료는 어디 있나요?

0

318

1

github에 정리좀하려고하는데, 해당 예제코드들 따로 공유가능할ㄲ요?

0

278

1

3:18 부분 질문드립니다. (lexical environment)

0

263

1

2:30초 경 그림 질문

0

375

3

constructor 질문있습니다!

0

286

2

nulish coalescing 과 optional chaining의 차이점은 무엇인가요?

0

352

1

프로토타입 예제에서 궁금한게 있습니다.

0

269

2

마지막 예제 질문드립니다.

1

228

1

궁금해서 명세를 찾아봤는데요

1

243

3

2:24경 설명

1

196

1

7분42초

1

187

1

궁금한것이 있습니다.

1

353

1

sample 파일 예제 소스는 어디있죠 ??

1

291

1

각 함수가 실행되면

2

193

1