郑志福

Results 7 comments of 郑志福

问题原因: vdoing/util/index.js 文件的 resolveSidebarItems 函数被无限的调用(751*751*3003 ~= 17亿次),而且resolvePage返回的数据太大了,导致打包卡住了。 页面数:751 resolveSidebarItems 调用次数:3003

进一步分析: resolveSidebarItems 这个函数的获取sidebar的时候,是幂等的,只跟regularPath以及pages有关系,pages是页面数量,贯穿全局的不变量,regularPath 是页面当前的地址,但是通过regularPath 解析出来的base、config是固定的几种,所以可以使用缓存来缓解这个压力。

最终代码如下: ` const sideBarCacheMap = new Map() let count = 0 export function resolveSidebarItems (page, regularPath, site, localePath) { console.log('count===', count++) const { pages, themeConfig } = site const localeConfig...

因为github的太难配了,本地又有gitlab,搞不清楚双账户的配置。 @xugaoyi 你修复一下吧

1. 你直接测试下执行次数呗。 2. 公司文档迁移。

治标不治本:层级过深,拍平即可