antd-pro是个不错的框架……在之前我一直这么觉得。最近在做准备工作的时候,越来越觉得心累……因为公司一般是需要一个精简的,干净的模板,而不是一堆mock数据的模板。但react中目前最好的管理框架,还是它……
关闭全球化
对于大部分公司来说,并不需要将项目写成多语言的,所以这个功能反而让开发变得不那么顺畅。官方是没有给你选择余地的,全面接入了全球化功能,而在官方github的回答,我看了几个,真的可以说是态度极差了(可能我点开的正好是这样的)。这个功能是与“umi-plugin-react'’这个插件有关,下面开始一步步来:
- 修改‘src/models/menu.js’;
function formatter(data, parentAuthority, parentName) {
return data
.map(item => {
if (!item.name || !item.path) {
return null;
}
let locale = 'menu';
locale = `${item.name || item.path}`;
const result = {
...item,
// 添加title,注释掉 name和locale,具体原因可以查看Component/PageHeaderWrapper的代码
title: locale,
// name: formatMessage({ id: locale, defaultMessage: item.name }),
// locale,
authority: item.authority || parentAuthority,
};
if (item.routes) {
const children = formatter(item.routes, item.authority, locale);
result.children = children;
}
delete result.routes;
return result;
})
.filter(item => item);
}
- 修改“layouts/BasicLayout.js”
{/* 弹出设置抽屉, 注释掉这个功能块 */}
{/* <Suspense fallback={<PageLoading />}>{this.renderSettingDrawer()}</Suspense> */}
- 如果暴躁老哥要彻底删除的话
要把config/config.js中的功能引用:
locale: {
enable: true, // default false
default: 'zh-CN', // default zh-CN
baseNavigator: true, // default true, when it is true, will use `navigator.language` overwrite default
},
以及,所有引用'umi/locale'插件的代码删除修改……我本来是想清理掉的,看到代码量我放弃了……zz