inflearn logo
강의

講義

知識共有

実習UI開発で学ぶ純粋なjavascriptとVueJS開発

検索フォーム実装 4 (実装)

강의 내용을 따라 했는데도 안되는 문제

309

WS IM

投稿した質問数 9

1

예를 들어, 검색값을 입력하고 엔터를 누를 때 콘솔에 출력하는 것이나, x버튼을 누르거나 검색 결과를 완전히 지우고 난 뒤에 콘솔에 출력하는 기능을 만들 때, 분명히 강의에서 해주시는 내용대로 따라하면 콘솔에 출력되지 않는 문제가 발생하네요.

브랜치를 이동해가면서 비교해보아도 뭐를 빼먹은 것 같지는 않은데, 기능이 구현된 브랜치에서는 잘 되던 것이 기능 구현 전 브랜치에서 강의 내용을 따라 치면 안 되는 이유가 무엇인지 알 수 있을까요?

아래는 FormView3 브랜치에서 실습 내용을 따라 적은 코드 입니다.

FormView.js

import View from './View.js'

const tag = '[FormView]'

const FormView = Object.create(View)

FormView.setup = function (el) {
  this.init(el)
  this.inputEl = el.querySelector('[type=text]')
  this.resetEl = el.querySelector('[type=reset')
  this.showResetBtn(false)
  this.bindEvents()
  return this
}

FormView.showResetBtn = function (show = true) {
  this.resetEl.style.display = show ? 'block' : 'none'
}

FormView.bindEvents = function () {
  this.on('submit', e => e.preventDefault())
  this.inputEl.addEventListener('keyup', e => this.onKeyup(e))
}

FormView.onKeyup = function (e) {
  const enter = 13
  this.showResetBtn(this.inputEl.value.length)
  if (e.keyCode !== enterreturn
  this.emit('@submit', { input: this.inputEl.value })
}

export default FormView

MainControllers.js

import FormView from "../views/FormView.js";

const tag = "[MainController]";

export default {
  init() {
    FormView.setup(document.querySelector("form"))
      .on('@submit'e => this.onSubmit(e.detail.input))
      .on('@reset'e => this.onResetForm())
  },

  onSubmit(input) {
    console.log(tag'onSubmit()'input)
  },
  
  onResetForm() {
    console.log(tag'onResetForm()')
  }
};

vuejs javascript

回答 2

0

pajang15140833

el.querySelector('[type=reset') 대괄호빠져있음

0

jeonghwan

x 버튼 클릭 이벤트 처리가 안된것 같습니다. 

강사님, 브랜치명 어떻게 만드셨어요?

2

209

1

이미지 파일 업데이트가 안돼있는 거 같습니다

1

502

1

git사용법을 잘 모르겠습니다..

1

495

1

@event 질문입니다.

1

254

1

return 문자열이 여러줄은 어떻게 설정하나요?

1

645

2

탭뷰에서 이벤트를 받아서 메인컨트롤러에게 전달만해주는 방식도 괜찮나요?

1

257

1

ResultComponent.vue 에러?

1

251

1

선생님 안녕하세요!

0

247

1

return new Promise 와 return Promise.resolve

2

474

1

바닐라

1

320

1

실습 관련 질무

1

248

1

event.preventDefault() 문의

1

291

1

컴퍼넌트 질문이 있습니다.

0

210

1

return this에 대해서 (재업로드)

0

355

1

return this에 대해서 이해가 잘 되지 않아요

0

1175

1

크롬으로 로컬 띄었더니 에러가나네요

1

322

0

에러가 나네요

1

329

2

git checkout 중에 질문드립니다.

1

302

1

bindEvent 메소드를 왜추가하는지 궁금해서 질문드립니다.

2

576

1

안녕하세요 vue.js 처음 입문하는데 강사님 강의로 시작하게 되었습니다.

0

217

1

index 페이지에서 main.js 관련 질문입니다

1

201

1

학습내용 정리 관련 질문입니다!

0

177

1

lite-server로 구현해야하는 이유는 무엇인가요~?

1

519

2

에러가 나는데 무슨 에러인지 모르겠어요.

1

251

1