반응형
Vue의 이상한 표기법: const { state = {} = 이.$store;
이미 생성된 프로젝트를 따르고 있는데 Vue 프로젝트에서 Vuex를 사용한 다음 표기법을 발견했습니다.
const { state = {} } = this.$store;
const { orders = {} } = state;
Vuex 저장소의 값과 동일하게 설정된 state라는 이름의 로컬 개체를 정의하는 것 같습니다.그리고 그것을 "orders"라고 불리는 다른 오브젝트와 동일하게 설정합니다만, 표기법 자체는 잘 모르겠습니다.즉, 이것이 나타내는 것은 다음과 같습니다.
{ variable = {} } = anotherObj
또, 이 표기법이 존재하는 경우는, 그 표기법이라고 부릅니다.(클론을 복제하는 방법인 것 같기 때문에 구글을 검색하여 딥 클로닝 등을 처리할 수 있습니다.)아니면 Vuex만의 특별한 문제일까요?
이것은, 다음과 같습니다.
const { state = {} } = this.$store;
는, 송신원(송신원)의 경우, 디폴트치로 할당을 파기하고 있습니다.this.$store
) 중 하나에 속성이 없습니다.state
그 가치를 가지고 있지 않은가?undefined
그 결과는 다음과 같습니다.state
가치가 있다this.$store.state
해당 속성이 존재하며 값이 없는 경우undefined
또는 속성이 존재하지 않거나 값이 있는 경우 새 공백 개체가 생성됩니다.undefined
.
예(개체 대신 문자열을 사용하지만 주체는 동일):
const obj1 = {};
const { a = "default" } = obj1;
console.log(a); // "default"
const obj2 = {
b: "value from obj2"
};
const { b = "default" } = obj2;
console.log(b); // "value from obj2"
언급URL : https://stackoverflow.com/questions/58205670/strange-notation-in-vue-const-state-this-store
반응형
'programing' 카테고리의 다른 글
Vue mapState 상태 이름 변경 (0) | 2022.08.28 |
---|---|
VueX를 사용하는 VueJs 2와 Redux를 사용하는 리액 (0) | 2022.08.28 |
Android 분할 문자열 (0) | 2022.08.27 |
vue.js에서 새로 고치지 않고 페이지에서 데이터를 업데이트하는 방법 (0) | 2022.08.27 |
Collection.stream().forEach()와 Collection.forEach()의 차이점은 무엇입니까? (0) | 2022.08.27 |