728x90
<keep-alive :include='["Home", "NoticeList"]'>
<router-view v-if="!isLoading" :has_profile.sync="has_profile" />
</keep-alive>
:include에는 router에 등록해준 view의 컴포넌트 이름을 추가해주면 해당 뷰만 캐시된다.
이전의 상태 정보를 기억하게 한다는것은 사실 매우 까다로운 일인데, 이렇게 간단하게 해결할 수 있다는걸 보고 새삼 놀라웠다.
이 문제 때문에 pagination으로 고칠까도 생각했다가, 이렇게 해결할 수 있는 방법이 있다는걸 알고 약간의 헤맴을 통해서 해결했다.
쓰면 쓸수록 vue와 django의 조합은 엄청 난것 같다.
validation 처리만 좀 더 간단해지면 좋을듯한데, 처음 접근하는 사람은 django의 다양한 error message 포맷으로 인해서 약간 헤맬 수 있을듯하다.
form validation error는 field명으로
serializer단의 validation 에러는 detail에 담겨서 오기 때문에, 조금 헷갈릴수 있음.
가끔 detail에 담기지 않고 그냥 넘어오는 경우도 있다.
이 부분을 잘 처리해줘야지 그렇지 않으면 사용자 입장에서는 에러임에도 에러인지 모르는 경우가 발생할 수 있다.
728x90
'IT > Vue' 카테고리의 다른 글
vue 중첩데이터 감시, vue watch nested data is not working (0) | 2022.01.13 |
---|---|
eslint Errors and Warning 옵션. (0) | 2021.04.29 |
eslint cheatsheet (0) | 2021.04.02 |
Vue lazyloading과 webpack bundler (0) | 2021.02.02 |
ERROR TypeError: Cannot read property 'tapPromise' of undefined (0) | 2021.02.01 |