class CONSTANTS {
static BEST_ITEM_PAGE_SIZE = Object.freeze({
PC: 4,
TABLET: 2,
MOBILE: 1,
});
static BUNDLE_SIZE = 5;
static ITEM_PAGE_SIZE = Object.freeze({
PC: 10,
TABLET: 6,
MOBILE: 4,
});
static SORT_ORDER = Object.freeze({
RECENT: 'recent',
// FAVORITE: 'favorite'
});
static SORT_ORDER_MSG = Object.freeze({
[CONSTANTS.SORT_ORDER.RECENT]: '최신순',
// [this.SORT_ORDER.FAVORITE]: '좋아요순'
});
static VIEWPORT = Object.freeze({
PC: 'PC',
TABLET: 'TABLET',
MOBILE: 'MOBILE',
});
static BREAKPOINTS = Object.freeze({
MOBILE: 743,
TABLET: 1199,
});
}
export default CONSTANTS;
기존에는 객체를 만들어서 사용했다.
더보기
const CONSTANTS = Object.freeze({
BEST_ITEM_PAGE_SIZE: Object.freeze({
PC: 4,
TABLET: 2,
MOBILE: 1,
}),
BUNDLE_SIZE: 5,
ITEM_PAGE_SIZE: Object.freeze({
PC: 10,
TABLET: 6,
MOBILE: 4,
}),
SORT_ORDER: Object.freeze({
RECENT: 'recent',
// FAVORITE: 'favorite'
}),
SORT_ORDER_MSG: Object.freeze({
SORT_ORDER.RECENT: '최신순',
// [this.SORT_ORDER.FAVORITE]: '좋아요순'
}),
VIEWPORT: Object.freeze({
PC: 'PC',
TABLET: 'TABLET',
MOBILE: 'MOBILE',
}),
BREAKPOINTS: Object.freeze({
MOBILE: 743,
TABLET: 1199,
}),
});
이랬더니 SORT_ORDER_MSG가 SORT_ORDER를 참조할 때, 정의되지 않은 변수를 참조하려고 해서 에러가 발생한다.
그래서 한참 고생했는데, class의 static property를 이용해 구현할 수 있다는걸 알게 됨.
'개발관련 > javascript' 카테고리의 다른 글
Object에서 array.map을 이용할 방법 (0) | 2024.08.30 |
---|---|
js 파일 인클루드를 위한 방법 (0) | 2022.02.04 |
cookie CRUD를 위한 유저 펑션 (0) | 2022.02.04 |
enter 입력시의 이벤트에 관해 (0) | 2022.01.30 |