inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Svelte.js [Core API] 완벽 가이드

20. CreateCard 컴포넌트 작성

버는을 아무리 눌러도 아무런 반응이 없습니다.

182

박형욱

작성한 질문수 3

1

+ Add another card 버튼을 아무리 눌러도
onEditMode로 안넘어 갑니다.
onEditMode 부분에 콘솔로그 찍어보면 isEditMode는
true로 다 잘 나옵니다.
화면에 변화만 없습니다. 다음 진도 나가고 싶은데
나갈 수가 없네요...
크롬 개발자 모드에서 + 클릭할때 보면
.list 에서만 반짝 합니다.
도와주십시요~~~!!
<script>
  import { tick } from "svelte";
  import { autoFocusout } from "~/actions/autoFocusout.js";

  let isEditMode = false;
  let title = "";
  let textareaEl;

  function addCard() {}

  async function onEditMode() {
    title = "";
    isEditMode = true;
    await tick();
    textareaEl && textareaEl.focus();
  }

  function offEditMode() {
    isEditMode = false;
  }
</script>

{#if isEditMode}
  <div use:autoFocusout={offEditMode} class="edit-mode">
    <textarea
      bind:value={title}
      bind:this={textareaEl}
      placeholder="Enter a title for this card..."
      on:keydown={(event) => {
        event.key === "Enter" && addCard();
        event.key === "Esc" && offEditMode();
        event.key === "Escape" && offEditMode();
      }}
    />
    <div class="actions">
      <div class="btn success" on:click={addCard}>Add Card</div>
      <div class="btn" on:click={offEditMode}>Cancel</div>
    </div>
  </div>
{:else}
  <div class="add-another-card" on:click={onEditMode}>+ Add another card</div>
{/if}

Sortable Rollup svelte

답변 2

2

HEROPY

박형욱 님 안녕하세요.😊

질문으로 남겨주신 코드를 복사해서 테스트를 해보니,

+ Add another card 버튼을 클릭했을 때 '수정 모드'로 잘 넘어갑니다.

아무래도  import { autoFocusout } from "~/actions/autoFocusout.js";의 autoFocusout.js 파일의 코드에 문제가 있는 것은 아닐까 추측을 해봅니다.

가장 정확하게 문제를 파악할 수 있는 것은,

현재 문제가 발생하는 프로젝트를 깃헙에 업로드한 후에 저장소 링크를 공유해 주시는 방법입니다.

혹은 좀 더 자세하게 파악할 수 있는 내용을 공유해 주시면 확인하고 바로 답변드리겠습니다.

0

박형욱

답변 감사합니다.  알려주신 내용 상세히 파악해보고 그래도 안된다면 다시 한번 도움 요청 하겠습니다.

0

박형욱

https://github.com/armsyuda/svelteStudy.git

하다하다 안되서 결국 깃에 올렸습니다...

.. 부탁드리겠습니다.

0

HEROPY

깃헙 저장소를 공유해 주셔서 감사합니다.😊

로컬에서 바로 문제를 찾았습니다.

src/components/ListContainer.svelte 파일을 열어보면,

선언된 변수의 이름과 사용하는 변수의 이름이 다르네요.

뒤에 s가 있거나 없으니 확인해 보세요~

해당 부분을 수정하니 잘 동작하는 듯합니다~👍

0

박형욱

감사합니다.... 

정답을 알고나니... 너무 허무해서 웃음만나오네요. ㅎㅎ 

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

0

216

1

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

0

293

1

소스코드

0

277

1

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

0

347

1

강의 소스 코드

1

676

2

aws ec2 배포시 질문

1

898

2

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

2

458

1

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

1

392

1

textarea에서 esc 키를 누를 때 오류

1

344

1

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

1

478

1

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

1

310

1

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

1

402

1

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

1

6201

2

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

1

315

1

로그인 정보를 확인할 때

1

263

1

재렌더링 때 interval 처리 질문

1

294

1

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

1

275

1

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

2

303

1

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

1

393

2

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

1

237

1

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

1

347

1

패키지 설치 시 퍼미션 에러

1

302

1

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

0

241

1

node-sass 설치 오류

1

2065

2