본문 바로가기

FrontEnd/Vue 37

[Vue.js] v-bind를 이용한 Class, Style 변경 v-bind 활용 v-bind를 활용하면 태그의 속성값에 데이터바인딩이 가능하다. class, style 또한 v-bind를 사용해서 조작가능하다. Class Binding (object) Class Binding (Array) Inline-style Binding (object) Inline-style Binding (Array) 2022. 9. 15.
[Vue.js] v-bind를 활용한 인풋버튼 비활성화, img src url 변수 사용 v-bind를 활용한 인풋 버튼 비활성화 v-bind를 활용하여 인풋 버튼 비활성화를 해보았습니다. react에서 { } 안에 js코드를 넣을수 있는것 처럼 vue에서는 " " 안에 js코드를 넣을 수가 있네요. v-bind:disabled="textValue === ''" 라는 부분을 통해 디스에이블드를 조건에 따라 true flase로 만들어 주었습니다. 만약 복잡한 validation이 필요하다면 methods로 빼야할것 같네요! Click 2022. 9. 15.
[Vue.js] v-model v-model VueJS는 State 대신 data() {}를 사용한다. 해당 data()의 return 값에 data 키-밸류 객체가 있다. 이 data를 input tag에 value로 바인딩 해주려면 "v-model" 이라는 속성을 사용해주면 된다. input:text, input:number, textarea 아래와 같이 input 속성값에 v-model을 넣어주면 된다. {{ valueModel }} {{ valueNumber }} {{ valueTextArea }} select, checkbox checked라는 data의 초기값을 빈배열로 지정, input checkbox의 v-model을 checked로 지정 => checked된 결과에 따라 배열에 들어감.. 신기하넹 리액트였음 onCli.. 2022. 9. 15.
[Vue.js] v-html (htmlBinding) VueJS에서 미리 선언한 HTML 코드를 꽂아 넣고 싶으면 아래와 같이 v-html이라는 곳에 미리 선언한 htmlString data를 넣으면된다. 그러면 아래 그림과 같이 v-html 속성을 추가한 DOM요소의 하위 태그로 htmlBinding이 Append된다. 2022. 9. 14.
[Vue.js] Vue Component 기본 틀 및 Data Binding Vue Component 기본 틀 위 그림은 Vue JS Component의 기본 틀입니다. Vue Component는 크게 세가지로 나뉩니다. 1) template : HTML 코드 부분 2) script : JS 로직이 들어가는 부분 3) style : CSS 부분 template에서 알아야 하는 부분 (React를 먼저 배워서 비교하면서 기록합니다.) 1) {{title}} 처럼 변수를 사용할 수 있다. (React와 동일) 2) v-model="title" 이라는 건 input 태그의 밸류가 title이라는 데이터와 바인딩 된다는 뜻 React 기준, value={title}과 동일, onChange={(e) => setTitle(e.target.value)}해주지 않아도 된다는건 다름, 강의에서.. 2022. 9. 14.
[Vue.js] Lazy Loading Routes 공식 문서 해석, 기록 공식 문서에서의 Lazy Loading 공식 문서 번들러를 이용해서 앱을 빌딩하면 JS번들은 꽤나 커진다. 그래서 코드를 Chunk 단위로 쪼개는게 효과적이다. 그리고 routing 될 때만 로드 하는게 효과적이다. Lazy Loading 하는 법 // replace // import UserDetails from './views/UserDetails' // with const UserDetails = () => import('./views/UserDetails') const router = createRouter({ // ... routes: [{ path: '/users/:id', component: UserDetails }], }) 위처럼 import문을 "Dynamic imports" 로 변경하고.. 2022. 9. 14.
[Vue.js] vue3 - vue router 설치, Lazy Loading 설정 서론 Vue3 강의 밖에 없어서 vue3를 기준으로 공부를 시작합니다. 연휴기간 시간이 없었기에 아직 HelloWorld를 벗어나지 못한 상태이지만, 그래도 이제 vue에 대해 알아가고 있으니 좋게 생각해야겠죠?! vue router 설치 vue add router 치면 알아서 설치를 해준다. src 하위에 router, views 폴더가 생긴다. Lazy Load (비동기 컴포넌트) 구성하기 import { createRouter, createWebHistory } from 'vue-router'; import HomeView from '../views/HomeView.vue'; import ContactView from '../views/ContactView.vue'; // import AboutVi.. 2022. 9. 14.