imba-lazy
v1.0.10
Published
javascript lazyModule registerModule 懒加载文件Promise 注册或者加载多个
Downloads
17
Maintainers
Readme
懒加载 module/*
安装
# pnpm
pnpm i imba-lazy
使用
vite list
// vite list
const moduleArray = import.meta.glob('./module/*.js')
webpack list
// webpack list
// 获取module文件下子模块内容
const modulesFiles = require.context('./module', true, /\.js$/)
const moduleArray = modulesFiles.keys().reduce((module, modulePath) => {
const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1')
module[moduleName] = modulesFiles(modulePath).default
return module
}, {})
import { setFileList, getFileList, lazyModule, registerModule } from 'imba-lazy'
// 设置缓存
setFileList('testFileList', moduleArray)
// 读取缓存
const cache = getFileList('testFileList')
// 根据缓存加载fileList
lazyModule({ fileName: 't4', fileType: 'js', fileKey: 'testFileList' })
// 根据缓存注册fileList
registerModule({ fileNames: ['t1', 't2', 't3'], fileType: 'ts', fileKey: 'testFileList' })
// 加载模块
lazyModule({ fileName: 't1', fileType: 'js', moduleFiles: moduleArray }).then((res) => {
console.log('res', res)
})
// 注册多个模块 加载所有完成后一起返回
registerModule({ fileNames: ['t1', 't2', 't3'], fileType: 'ts', moduleFiles: moduleArray }).then((res) => {
console.log('res', res)
})
函数
lazyModule
registerModule