강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

박형욱님의 프로필 이미지
박형욱

작성한 질문수

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

20. CreateCard 컴포넌트 작성

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

작성

·

178

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}

퀴즈

61%나 틀려요. 한번 도전해보세요!

reset.css를 사용하는 주요 목적은 무엇일까요?

웹사이트 성능을 최적화하기 위해

브라우저별 기본 스타일을 초기화하여 일관성을 확보하기 위해

특정 HTML 요소에 애니메이션 효과를 쉽게 적용하기 위해

자바스크립트 코드 내에서 CSS를 직접 작성하기 위해

답변 2

2

HEROPY님의 프로필 이미지
HEROPY
지식공유자

박형욱 님 안녕하세요.😊

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

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

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

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

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

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

박형욱님의 프로필 이미지
박형욱
질문자

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

박형욱님의 프로필 이미지
박형욱
질문자

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

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

.. 부탁드리겠습니다.

0

HEROPY님의 프로필 이미지
HEROPY
지식공유자

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

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

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

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

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

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

박형욱님의 프로필 이미지
박형욱
질문자

감사합니다.... 

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

박형욱님의 프로필 이미지
박형욱

작성한 질문수

질문하기