代码拉取完成,页面将自动刷新
import { IApi } from '@aluni/types';
import { winPath } from '@umijs/utils';
import { copyFileSync, existsSync, readFileSync, writeFileSync } from 'fs';
import { dirname, join } from 'path';
export default (api: IApi) => {
api.onStart(() => {
// 修复当配置 base 时, @umijs/plugin-docs 首页判断 bug
const layoutPath = winPath(
join(
dirname(require.resolve('@umijs/plugin-docs')),
'..',
'client/theme-doc/Layout.tsx',
),
);
// window.location.pathname === '/'
let context = readFileSync(layoutPath, 'utf-8');
context = context.replace(
"window.location.pathname === '/'",
`window.location.pathname === '${api.config.base ?? '/'}'`,
);
writeFileSync(layoutPath, context, 'utf-8');
});
api.onBuildComplete(({ err }) => {
//@ts-ignore
if (!err && !existsSync(join(api.paths.absOutputPath!, '404.html'))) {
// 如果没有 404 则复制一下 index
setTimeout(() => {
copyFileSync(
join(api.paths.absOutputPath!, 'index.html'),
join(api.paths.absOutputPath!, '404.html'),
);
}, 500);
}
});
api.onGenerateFiles((args) => {
api.writeTmpFile({
path: 'index.ts',
content: `export { FeatureIItem } from '${join(
api.cwd,
'docs',
'components',
'Item',
)}'`,
});
});
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。