UNPKG

vue-ele-form

Version:

基于 element-ui 的数据驱动表单组件

41 lines (38 loc) 1.23 kB
export function loadMockJs() { if (!window.Mock) { const secScript = document.createElement('script') secScript.setAttribute('type', 'text/javascript') secScript.setAttribute('src', 'https://unpkg.com/mockjs@1.1.0/dist/mock.js') document.body.insertBefore(secScript, document.body.lastChild) } } export default function mock() { const Mock = window.Mock if (window.Mock) { // 自定义扩展 Mock.Random.extend({ multiple(data) { const count = Mock.Random.integer(0, data.length) return [...new Set(Array.from({ length: count }, () => Mock.Random.pick(data)))] }, checkbox(data, valueKey = 'value') { if (Array.isArray(data)) { const values = data.map((item) => item[valueKey]) const count = Mock.Random.integer(0, data.length) return [...new Set(Array.from({ length: count }, () => Mock.Random.pick(values)))] } else { return [] } }, radio(data, valueKey = 'value') { if (Array.isArray(data)) { const values = data.map((item) => item[valueKey]) return Mock.Random.pick(values) } else { return null } } }) } return Mock }