Skip to content

Commit 40e95db

Browse files
committed
refactor
1 parent cca0c7e commit 40e95db

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/common/router.js

+11-5
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,23 @@
1-
/* eslint-disable global-require */
21
import { createElement } from 'react';
32
import dynamic from 'dva/dynamic';
43
import { getMenuData } from './menu';
54

65
let routerDataCache;
76

7+
const modelNotExisted = (app, model) => (
8+
// eslint-disable-next-line
9+
!app._models.some(({ namespace }) => namespace === model)
10+
);
11+
812
// wrapper of dynamic
913
const dynamicWrapper = (app, models, component) => {
1014
// () => require('module')
1115
// transformed by babel-plugin-dynamic-import-node-sync
1216
if (component.toString().indexOf('.then(') < 0) {
1317
models.forEach((model) => {
14-
if(!app['_models'].some(({ namespace }) => namespace === model)) { // eslint-disable-line
15-
app.model(require(`../models/${model}`)); // eslint-disable-line
18+
if (modelNotExisted(app, model)) {
19+
// eslint-disable-next-line
20+
app.model(require(`../models/${model}`));
1621
}
1722
});
1823
return (props) => {
@@ -28,8 +33,9 @@ const dynamicWrapper = (app, models, component) => {
2833
// () => import('module')
2934
return dynamic({
3035
app,
31-
// eslint-disable-next-line no-underscore-dangle
32-
models: () => models.filter(m => !app._models.some(({ namespace }) => namespace === m)).map(m => import(`../models/${m}.js`)),
36+
models: () => models.filter(
37+
model => modelNotExisted(app, model)).map(m => import(`../models/${m}.js`)
38+
),
3339
// add routerData prop
3440
component: () => {
3541
if (!routerDataCache) {

0 commit comments

Comments
 (0)