강의

멘토링

커뮤니티

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

vnzl-456님의 프로필 이미지
vnzl-456

작성한 질문수

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

computed 속성을 이용한 이메일 형식 검사

data를 못찾는다는데..

해결된 질문

작성

·

91

1

삭제된 글입니다

답변 4

0

캡틴판교님의 프로필 이미지
캡틴판교
지식공유자

올려주신 콘솔 에러를 보니 백엔드 API 서버가 실행되고 있지 않은 것 같은데 한번 Node.js 서버 확인해보시겠어요? :) 프런트 단 에러는 아닌 것 같습니다

0

vnzl-456님의 프로필 이미지
vnzl-456
질문자

.

0

vnzl-456님의 프로필 이미지
vnzl-456
질문자

<template>
  <form @submit.prevent="submitForm">
    <div>
      <label for="username">id: </label>
      <input id="username" type="text" v-model="username" />
    </div>
    <div>
      <label for="password">pw: </label>
      <input id="password" type="text" v-model="password" />
    </div>
    <button :disabled="!isUsernameValid || !password" type="submit">
      로그인
    </button>
    <p>{{ logMessage }}</p>
  </form>
</template>

<script>
import { loginUser } from '@/api/index';
import { validateEmail } from '@/utils/validation.js';

export default {
  data() {
    return {
      // form values
      username: '',
      password: '',
      // log
      logMessage: '',
    };
  },
  computed: {
    isUsernameValid() {
      return validateEmail(this.username);
    },
  },
  methods: {
    async submitForm() {
      try {
        //비지니스 로직
        const userData = {
          username: this.username,
          password: this.password,
        };
        const { data } = await loginUser(userData);
        console.log(data.user.username);
        this.logMessage = `${data.user.username} 님 환영합니다🤩`;
        //this.initForm();
      } catch (error) {
        // 에러 핸들링 코드
        // alert(error.response.data);
        this.logMessage = error.response.data;
        //this.initForm();
      } finally {
        this.initForm();
      }
    },
    initForm() {
      this.username = '';
      this.password = '';
    },
  },
};
</script>

<style></style>

0

캡틴판교님의 프로필 이미지
캡틴판교
지식공유자

안녕하세요 vnzl-456님, 올려주신 이미지가 너무 작아서 오류를 확인하기가 어렵네요. 혹시 코드랑 로그쪽만 다시 스샷해서 올려주실 수 있으세요? :)

vnzl-456님의 프로필 이미지
vnzl-456

작성한 질문수

질문하기