【관련 주제 추천: react 면접 질문(2020)】
key는 React에서 어떤 목록 요소가
수정
,삭제
또는추가
되었는지추적
하는 데 사용됩니다.보조 식별자
.diff 알고리즘
에서 키는 요소 노드가 이동되었는지 또는 새로 생성된 요소인지판단
하여불필요한
요소를 줄이는 데 사용됩니다. 반복 렌더링.追踪
哪些列表中元素被修改
、删除
或者被添加
的辅助标识
。在diff算法
中,key用来判断
该元素节点是被移动过来的还是新创建的元素,减少不必要
的元素重复渲染
。
有什么区别?
因为
this.props
和this.state
的更新可能是异步
的,不能依赖它们的值去计算下一个 state
该函数会在setState函数调用完成并且组件开始重渲染的时候被调用,我们可以用该函数来监听渲染是否完成
在 super() 被调用之前,子类是不能使用 this 的,在 ES5 中,子类必须在 constructor 中调用 super()。传递 props 给 super() 的原因则是便于(在子类中)能在
constructor
访问this.props
2. React에서 컴포넌트를 빌드하는 방법은 무엇인가요?Flux 的最大特点,就是数据的"单向流动"。
流程:
用户访问view
view
发送用户的action
dispatcher
接收action
,要求store
进行相应的更新store
更新后,发送一个change
事件view
收到change
함수 구성요소가 더 이해하기 쉽습니다. 함수 구성요소를 보면 그 기능이 단지 속성을 수신하고 페이지를 렌더링하는 것일 뿐이라는 것을 알 수 있으며, UI와 관련이 없는 논리적 처리를 수행하지 않습니다. 반환되는 DOM 구조가 얼마나 복잡한지에 관계없이
3. setState를 호출한 후에는 어떻게 되나요?
🎜레벨에 따라 트리 구조를 분해하고 동일한 레벨의 요소만 비교합니다.🎜🎜비교를 용이하게 하기 위해 목록 구조의 각 단위에 고유한 키 속성을 추가합니다.🎜🎜React는 동일한 클래스(여기서 클래스는 구성 요소의 이름을 나타냄)🎜🎜선택적 하위 트리 렌더링. 개발자는 diff 성능을 향상시키기 위해 shouldComponentUpdate를 재정의할 수 있습니다🎜🎜🎜5.this.props
및 this 때문에 setState에 전달된 매개변수가 객체 대신 콜백인 것이 권장되는 이유는 무엇입니까? 상태
업데이트는 비동기
일 수 있으며 해당 값을 사용하여 다음 상태를 계산할 수 없습니다🎜🎜🎜6. 🎜🎜🎜 🎜7. setState의 두 번째 매개변수 역할🎜🎜🎜 이 함수는 setState 함수 호출이 완료되고 구성 요소가 다시 렌더링되기 시작할 때 호출됩니다. 이 함수를 사용하여 렌더링이 완료되었는지 모니터링할 수 있습니다. 8. (생성자중에서) super(props)를 호출하는 목적은 무엇인가요🎜🎜🎜super()가 호출되기 전에는 서브클래스가 이를 사용할 수 없습니다. ES5에서는 서브클래스가 생성자에서 super()를 호출해야 합니다. props를 super()에 전달하는 이유는 constructor
🎜🎜🎜9에서 this.props
에 대한 (서브클래스에서) 액세스를 용이하게 하기 위한 것입니다. Flux의 아이디어와 프로세스?🎜 🎜🎜Flux의 가장 큰 특징은 데이터의 "일방향 흐름"입니다. 프로세스:
보기
보기
에 액세스하고 사용자의 작업
을 보냅니다. code> 디스패처
는 action
을 수신하고 그에 따라 store
를 업데이트해야 합니다.store
가 완료된 후 업데이트됨, change
이벤트 보내기view
는 change
이벤트를 수신한 후 페이지를 업데이트합니다. 🎜🎜🎜10. React에서 Element와 Component의 차이점은 무엇인가요? 🎜🎜🎜createElement 함수는 JSX 컴파일 후 React Element를 생성하는 데 사용되는 함수입니다.🎜🎜cloneElement는 요소를 복사하고 새 Props🎜🎜🎜11을 전달하는 데 사용됩니다. createElement와 cloneElement🎜🎜🎜🎜🎜🎜 🎜 🎜더 많은 프로그래밍 관련 내용은 PHP 중국어 홈페이지 🎜프로그래밍 입문🎜 칼럼을 주목해주세요! 🎜위 내용은 기본 면접 질문에 반응(공유)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!