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

김인숙 김님의 프로필 이미지

작성한 질문수

Vue.js 끝장내기 - 실무에 필요한 모든 것

사용자 폼 유효성 검사 안내

사용자 폼 유효성 검사에서 에러

해결된 질문

20.02.09 21:03 작성

·

2.2K

1

안녕하세요.

https://stackoverflow.com/questions/46155/how-to-validate-an-email-address-in-javascript

위의 링크의 정규표현식을 긁어서 붙이면 아래와 같이 에러가 뜹니다.

 ERROR  Failed to compile with 1 errors                                             9:02:31 PM

 error  in ./src/utils/validation.js

Module Error (from ./node_modules/eslint-loader/index.js):

error: Unnecessary escape character: \[ (no-useless-escape) at src/utils/validation.js:2:22:

  1 | function validateEmail(email) {

> 2 |   var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}

\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

    |                      ^

  3 |   return re.test(String(email).toLowerCase());

  4 | }

  5 | 

error: Unnecessary escape character: \[ (no-useless-escape) at src/utils/validation.js:2:47:

  1 | function validateEmail(email) {

> 2 |   var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}

\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

    |                                               ^

  3 |   return re.test(String(email).toLowerCase());

  4 | }

  5 | 

2 errors found.

 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/LoginForm.vue?vue&type=script&lang=js& 19:0-51 30:13-26

 @ ./src/components/LoginForm.vue?vue&type=script&lang=js&

 @ ./src/components/LoginForm.vue

 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/LoginPage.vue?vue&type=script&lang=js&

 @ ./src/views/LoginPage.vue?vue&type=script&lang=js&

 @ ./src/views/LoginPage.vue

 @ ./src/routes/index.js

 @ ./src/main.js

 @ multi (webpack)-dev-server/client?http://192.168.219.108:8080/sockjs-node (webpack)/hot/dev-server.js ./src/main.js

답변 3

2

김인숙 김님의 프로필 이미지
김인숙 김
질문자

2020. 02. 09. 21:38

메인 페이지 개발을 위한 브랜치 안내 및 코드 정리를 보고 해결하였습니다.

0

꿀돼지님의 프로필 이미지

2020. 11. 04. 21:57

해결못하였는데.. 도움이필요합니다..

ljy851님의 프로필 이미지

2022. 05. 10. 11:35

ESLint에 의한 에러같아요.

정규표현식이 올바르게 입력됐다는 걸 가정하에 ESLint가 에러로 잡지 않게 만들면 됩니다.

ESLint가 에러로 잡지 않도록 변수로 지정한 정규표현식 윗 줄에

// eslint-disable-next-line

을 넣으면 에러로 처리되지 않고 실행됩니다.

 

방금 알게됐는데 아래 강의에 나와있어요.

다다다음 강의 "메인 페이지 개발을 위한 브랜치 안내 및 코드 정리" 확인하세요.

 

0

장기효(캡틴판교)님의 프로필 이미지

2020. 02. 09. 21:58

아 네 인숙님 잘하셨어요 :) 제가 좀 더 꼼꼼히 터미널 에러를 확인하면서 강의를 진행했어야 했는데, 기능 구현 위주로만 강의 내용을 전달하다보니 세심하게 신경을 못썼네요.. :) 스택 오버 플로우에서 가져온 유효성 검사 코드에서 불필요한 코드가 있었던 것이니 참고하셔서 진행하시면 될 것 같습니다 :)