require这玩意不属于vite的功能,也不是vue的功能,我没有用webpack,所以无法直接用require。
但因为参考的项目用了require.context的遍历,所以就在想应该怎么弄呢。查了一下资料,发现vite有提供现成的:import.meta.glob,用法和 require.context差不多。
原来的代码: const requireModules = require.context('./modules/', true, /index\.(ts|js)$/iu)
修改后的代码:const requireModules = import.meta.glob('./modules/*/index.(ts|js)')
只是原来requireModules还是一个function,而修改后的是一个Object,因此遍历的代码就要再改一下,比如原来可以直接requireModules.keys(),现在只能用Object.keys(requireModules)。
至此,修改完毕。