12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- import fetch from 'dva/fetch';
- export const dva = {
- config: {
- onError(err) {
- console.error(err);
- err.preventDefault();
- },
- },
- };
- let authRoutes = {};
- function ergodicRoutes(routes, authKey, authority) {
- routes.forEach(element => {
- if (element.path === authKey) {
- if (!element.authority) element.authority = []; // eslint-disable-line
- Object.assign(element.authority, authority || []);
- } else if (element.routes) {
- ergodicRoutes(element.routes, authKey, authority);
- }
- return element;
- });
- }
- export function patchRoutes(routes) {
- Object.keys(authRoutes).map(authKey =>
- ergodicRoutes(routes, authKey, authRoutes[authKey].authority)
- );
- window.g_routes = routes;
- }
- export function render(oldRender) {
- authRoutes={
- '/form/advanced-form': { authority: ['admin', 'user'] },
- }
- oldRender();
- // fetch('/api/auth_routes')
- // .then(res => res.json())
- // .then(
- // ret => {
- // authRoutes = ret;
- // oldRender();
- // },
- // () => {
- // oldRender();
- // }
- // );
- }
|