반응형
돌연변이 및 동작을 통한 Vuex 빅 어레이 처리
저는 약 1k의 배열을 가지고 있습니다.10k 요소를 처리해야 합니다.어레이가 Vuex 상태로 저장되고 있습니다.사용자는 단일 요소 또는 모든 요소를 처리할 수 있어야 합니다.처음에는 어레이가 상당히 작았을 때 단일 요소 처리를 위해 변환을 사용하고 모든 요소 처리를 위해 동작을 사용했습니다.그래서 코드는 다음과 같았습니다.
new Vuex.Store({
state: {
array: [el1, el2, el3...]
},
mutations: {
processEl: (state, el) => {
...
}
},
actions: {
processAll: context => {
context.state.array.forEach(el => context.commit('processEl', el))
}
}
})
안타깝게도 어레이가 계속 성장함에 따라 작업 성능이 점점 더 저하되었기 때문에 다음과 같은 해결책은 다음과 같습니다.
new Vuex.Store({
state: {
array: [el1, el2, el3...]
},
mutations: {
processEl: (state, el) => {
...
},
processAll: (state, el) => {
function processEl (el) {
...
}
state.array.forEach(el => processEl(el))
}
}
})
훨씬 더 잘 작동하지만 더 우아한 해결책이 있습니까?processEl
기능 내용?
정의할 수 있습니다.processEl
에서 호출할 수 있도록 외부 범위에서 기능processEl
그리고.processAll
.
function processEl (state, el) {
...
}
new Vuex.Store({
state: {
array: [el1, el2, el3...]
},
mutations: {
processEl,
processAll (state) {
state.array.forEach(el => processEl(state, el))
}
}
})
언급URL : https://stackoverflow.com/questions/51963372/vuex-big-array-processing-via-mutations-and-actions
반응형
'source' 카테고리의 다른 글
Oracle이 모든 테이블의 통계를 수동으로 업데이트 (0) | 2023.06.28 |
---|---|
해시에서 문자열을 기호로 변환하는 가장 좋은 방법 (0) | 2023.06.28 |
MongoEngine을 사용하여 정렬하시겠습니까? (0) | 2023.06.28 |
Dapper를 사용하여 한 번의 왕복에 여러 개의 SQL 문이 있습니다.그물 (0) | 2023.06.28 |
막대 순서 ggplot2 막대 그래프 (0) | 2023.06.28 |