naive-ui/packages/utils/data/linkedOptions.js
2019-08-28 17:02:40 +08:00

18 lines
463 B
JavaScript

import cloneDeep from 'lodash/cloneDeep'
export default function linkedOptions (options) {
const decoratedOptions = cloneDeep(options).map((option, index) => {
return {
...option,
id: index
}
})
const length = decoratedOptions.length
decoratedOptions.forEach((option, i) => {
option.prev = decoratedOptions[(i + length - 1) % length]
option.next = decoratedOptions[(i + length + 1) % length]
})
return decoratedOptions
}