inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

함수형 프로그래밍과 JavaScript ES6+ 응용편

클래스를 대신 함수로 하는 추상화

삭제후 alert를 띄우는 코드

508

이충만

작성한 질문수 9

0

confirm을 통해 삭제 후 '삭제되었습니다.' alert를 띄울 때 동작은 잘 되는데 아래와 같은 에러가 뜨는 이유가 궁금합니다.

_.go(
  Images.fetch(),
  Images.tmpl,
  $.el,
  $.append($.qs('body')),
  $.findAll('.remove'),
  $.on('click', async ({ currentTarget }) => (
    await Ui.confirm('정말 삭제하시겠습니까?') && (
      _.go(
        currentTarget,
        $.closest('.image'),
        $.remove,
        await Ui.alert('삭제되었습니다.'),
      )
    )
  ))
);

javascript 함수형-프로그래밍

답변 2

1

MDU 유인동

안녕하세요! 다양하게 응용해보려고 하고 계시군요.

정확하게 되고 계신건아니에요. 삭제되었다는 얼럿 부분 코드가 먼저 실행되고 계십니다.

1: await Ui.confirm('정말 삭제하시겠습니까?')
2: await Ui.alert('삭제되었습니다.')

위 코드에서는 위와 같은 순서로 먼저 실행되고 있습니다. 그리고 await UI.alert('') 자리에는 함수로 평가되고 있지 않기 때문에 에러가 f is not a function 이라는 에러가 나오고 있는거에요.

아래와 같이 변경하시면 됩니다.

_.go(
  Images.fetch(),
  Images.tmpl,
  $.el,
  $.append($.qs('body')),
  $.findAll('.remove'),
  $.on('click', async ({ currentTarget }) => (
    await Ui.confirm('정말 삭제하시겠습니까?') && (
      _.go(
        currentTarget,
        $.closest('.image'),
        $.remove,
        () => Ui.alert('삭제되었습니다.')
      )
    )
  ))
);

혹은 이런것도 방법입니다.

_.go(
  Images.fetch(),
  Images.tmpl,
  $.el,
  $.append($.qs('body')),
  $.findAll('.remove'),
  $.on('click', async ({ currentTarget }) => (
    await Ui.confirm('정말 삭제하시겠습니까?') &&
    _.go(
      currentTarget,
      $.closest('.image'),
      $.remove) &&
    Ui.alert('삭제되었습니다.')
)) );

0

이충만

우문현답이네요. 이렇게나 친절하게 답변 해주셔서 정말 감사합니다 😄

이미지 동시성 다루기

0

116

2

클로저와 같은 함수형 프로그래밍 공부

0

192

2

fx.js

0

440

2

fxjs 라이브러리 takeL 관련하여 질문드립니다.

0

344

2

[ 비동기 상황에서의 Lazy, Strict 기법이 혼합된 평가 ] 에 대한 이해

0

528

1

input값이 이터러블 함에도 range를 쓴 이유가 궁금합니다.

0

468

1

질문있습니다!

1

372

2

DB Insert관련

0

657

2

강의에 대한 제언

2

599

1

DOM 조작 관련 질문입니다.

0

408

1

L.map, L.filter

0

613

1

indexBy 함수에 대한질문입니다.

0

404

2

해당 강의를 듣고 나면

0

397

1

내용없음

0

236

1

함수 추출에 대한 고민

1

286

1

뷰 포트에 보이는 엘리먼트만 이미지 로드하고 싶을 때

1

327

1

기존에 반복문이 1개 돌던거를 이렇게하면 2번 도는데...

0

242

1

array in object... 는 어떤 식으로 재귀가 가능할까요..?

0

271

1

queryToObject 질문드립니다.

0

359

1

재귀는 어떻게 표현할 수 있을까요?

0

315

1

모든 명령형 => 함수형 가능한가요?

0

323

1

명령형 => 함수형 변환

0

341

2

이해한게 맞을까요?

0

216

1

iter의 개별 elements 에 data 를 삽입 또는 변형해서 삽입하는 경우엔 map 으로 제어를 하는게 맞을까요?

0

263

2