inflearn logo
강의

Course

Instructor

Svelte.js [Core API] Complete Guide

6. Create a Todo Example

스벨트 반응성에 대해 질문드립니다!

470

작성자 없음

0 asked

1

안녕하세요 todo예제 진행하면서 궁금한 점 질문드립니다.

강의영상을 보면서 사진과 같이 코드를 작성해 보았습니다.

스벨트가 반응성을 보이기 위해서 $todos=$todos 자기자신을 재할당 해야한다고 이해하였는데 궁금한 점이 있어 질문드립니다!

1. 리액트에서는 재렌더링을 위해서 상태값을 불변성을 지켜주면서 업데이트를 했는데 스벨트의 반응성의 경우 단순하게 재할당만해도 반응성(재렌더링?)이 일어나는것인가요?

추가적으로 스벨트가 반응성을 감지하는 원리 같은 것이 있을까요?

 

2. $todos=$todos 자기자신에게 재할당하는 코드가 익숙치가 않아서 스프레드 연산자로 불변성을 지켜주는 로직으로 작성해보았는데 이 부분이 그냥 let 변수에 재할당하는 것보다 메모리 효율 측면에서 불리할까요?

 

감사합니다.

svelte Rollup Sortable

Answer 1

0

HEROPY

pumpkin 님 안녕하세요.😊

리액트나 뷰는 가상 돔을 사용해 런타임에서 상태를 비교하고 반응성을 사용하지만,

스벨트는 가상 돔 없이 컴파일 과정에서 할당 연산자가 사용된 부분의 상태에서 반응성을 사용합니다.

'어떤 방식이 더 좋다'고 단정할 수는 없고 나름의 장단점이 있습니다.

그리고 분명히 서로 동작 원리가 다릅니다.

그래서 되도록 스벨트의 패턴에 맞게 작성하시는 걸 권장하지만,

성능 차이는 거의 없을테니 첨부된 예제처럼 전개 연산자로 작성하셔도 문제는 없을 듯합니다.

 

56강 4. 슬롯 포워딩이 Svelte 5 부터는 적용 불가

0

208

1

5 라이프사이클 모듈화 - 질문

0

285

1

소스코드

0

268

1

스벨트킷 강의는 안해주시나요?

0

334

1

강의 소스 코드

1

657

2

aws ec2 배포시 질문

1

883

2

vite 사용하는 예시 추가 계획은 없으실까요?

2

444

1

터미널에서 npx를 치실 때 흐린색으로 가이드처럼 나오는건 어떻게 해야 하나요?

1

379

1

textarea에서 esc 키를 누를 때 오류

1

334

1

백엔드는 어떻게 배우면 좋을까요?

1

305

1

scss를 사용하기 위한 sveltePreprocess() 실행 위치가?

1

394

1

보간한다는 뜻을 무슨 의미로 이해해야 하나요?

1

6130

2

[0:15] Vuejs 인라인 핸들러 비권장 설명

1

304

1

로그인 정보를 확인할 때

1

251

1

재렌더링 때 interval 처리 질문

1

287

1

7:10초 설명에 질문 있습니다.

1

268

1

:global() 에서 & 적용이 안되는거 같아요

2

298

1

promise 변수에 초기값 관련 질문입니다.

1

383

2

혹시 vue 처럼 classObject 객체를 통해 제어하는 방법은 없을까요?

1

232

1

onMount 응용해서 적용해보려고 하는데 오류가 나네요.

1

342

1

패키지 설치 시 퍼미션 에러

1

296

1

스토어를 왜 사용하는지 궁금합니다

0

237

1

node-sass 설치 오류

1

2055

2

Uncaught (in promise) TypeError 오류 질문

1

1186

2