Dva: Dva рдХреЗ рдкрд╛рд╕ index.js рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рдХреЛрдб рдХреНрдпреЛрдВ рд╣реИрдВ? рдХреНрдпрд╛ рдХреЛрдИ рдбреЗрдореЛ рдмреНрд▓реЙрдХ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 23 рджрд┐рд╕ре░ 2016  ┬╖  19рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: dvajs/dva

Dva рдХреЗ рдкрд╛рд╕ index.js рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рдХреЛрдб рдХреНрдпреЛрдВ рд╣реИрдВ? рдХреНрдпрд╛ рдХреЛрдИ рдбреЗрдореЛ рдмреНрд▓реЙрдХ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╕рднреА 19 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП https://github.com/sorrycc/blog/issues/18 рджреЗрдЦреЗрдВ https://github.com/dvajs/dva-example-user-dashboard

рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдФрд░ рдкрд╛рдпрд╛ рдХрд┐ рдпрд╣ рдкреИрдХреЗрдЬ рдПрдХ рд╣реА рдлрд╛рдЗрд▓ рдореЗрдВ рд╣реИ рдФрд░ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ?

рдорд╛рдВрдЧ рдкрд░ рд▓реЛрдб? рд╕рдВрджрд░реНрдн: https://github.com/dvajs/dva/tree/master/examples/dynamic-load

рдСрди-рдбрд┐рдорд╛рдВрдб рд▓реЛрдбрд┐рдВрдЧ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдмреНрд▓реЙрдХ рдкреИрдХреЗрдЬрд┐рдВрдЧ...

рдХрд┐рд╕реА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк CommonsChunkPlugin рдЖрдЬрд╝рдорд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдЬреЛ Vue рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓рд┐рдЦрд╛ рд╣реИ, Vue рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЗрд╕ рддрд░рд╣ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рд░реВрдЯрд┐рдВрдЧ:
const Login = r => require.ensure([], () => r(require('../components/login/Login.vue')), 'user') export default new Router({ mode: 'history', scrollBehavior: () => ({ y: 0 }), routes: [ { name: 'login', path: '/login', component: Login } ] })
рд╡реЗрдмрдкреИрдХ:
output: { path: config.build.assetsRoot, publicPath: process.env.NODE_ENV === 'production' ? config.build.assetsPublicPath : config.dev.assetsPublicPath, filename: '[name].js' },
рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдбреАрд╡реАрдП рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рд╕рд┐рд░реНрдл рдорд╛рдВрдЧ рдкрд░ рд▓реЛрдб рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ?

рдирд╣реАрдВ, рдпрд╣ рдмреНрд▓реЙрдХ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЛ рднреА рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рджреЛ рдорд╛рд░реНрдЧ рд╣реИрдВ: a, b;
dva рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ a рдпрд╛ b рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЕрдиреБрд░реЛрдзрд┐рдд index.js, рд╕рднреА рдореЗрдВ a рдФрд░ b рдХрд╛ рд▓реЙрдЬрд┐рдХ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИ;
Vue рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ, рдкреГрд╖реНрда a рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдиреБрд░реЛрдзрд┐рдд js a.index.js рд╣реИ, рдФрд░ рдкреГрд╖реНрда b рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдиреБрд░реЛрдзрд┐рдд js b.index.js рд╣реИредрдкрд░рд╕реНрдкрд░ рд╕рдорд╛рд╡реЗрд╢реА рдирд╣реАрдВ рд╣реИрдВ

https://github.com/dvajs/dva/blob/master/examples/dynamic-load/router.js#L6 -L27
рдЗрд╕ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд vue рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдкреНрд░рднрд╛рд╡ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЗрд╕ рдбрд╛рдпрдиреЗрдорд┐рдХ рд░реВрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдб рджреЗрдЦрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ Vue рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдПрд╣рд╕рд╛рд╕ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рдХреЛрдб рдЗрд╕ рддрд░рд╣ рд╣реИ
`рдХреЙрдиреНрд╕реНрдЯ рд▓реЙрдЧ рдЗрди = c => рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ ([], рдЖрд╡рд╢реНрдпрдХрддрд╛ => (
app.model(require('./models/login/loginModel')),
рд╕реА (рд╢реВрдиреНрдп, рдЖрд╡рд╢реНрдпрдХрддрд╛ ('./ рдорд╛рд░реНрдЧ/рд▓реЙрдЧрд┐рди/рд▓реЙрдЧрд┐рди'))
));

рдХреЙрдиреНрд╕реНрдЯ рдореЗрди = рд╕реА => рдЖрд╡рд╢реНрдпрдХрддрд╛ред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ ([], рдЖрд╡рд╢реНрдпрдХрддрд╛ => (
app.model(require('./models/main/mainModel')),
рд╕реА (рд╢реВрдиреНрдп, рдЖрд╡рд╢реНрдпрдХрддрд╛ ('./рдорд╛рд░реНрдЧ/рдореБрдЦреНрдп/рдореБрдЦреНрдп'))
));

рдлрд╝рдВрдХреНрд╢рди рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯрдкреНрд░рдорд┐рд╢рди () {
рдХреЙрдиреНрд╕реНрдЯ рдЯреЛрдХрди = рдХрд┐рдЯред getCookies ('рдЯреАрдПрдл-рдЯреЛрдХрди');
рдХреЙрдиреНрд╕реНрдЯ рдпреВрдЖрдИрдбреА = рдХрд┐рдЯред рдЧреЗрдЯрдХреБрдХреАрдЬ ('рдЯреАрдПрдл-рдпреВрдЖрдИрдбреА');
рдЕрдЧрд░ (!uid || !рдЯреЛрдХрди) {
app._store.dispatch(routerRedux.replace('/login'))
}
}

рд╡рд╛рдкрд╕реА getComponent={(рд╕реНрдерд╛рди, рдХреЙрд▓рдмреИрдХ) => рд▓реЙрдЧрд┐рди (рдХреЙрд▓рдмреИрдХ)}/>
рдСрдиреЗрдВрдЯрд░ = {рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯрдкреНрд░рдорд┐рд╢рди ()}
getComponent={(рд╕реНрдерд╛рди, рдХреЙрд▓рдмреИрдХ) => рдореБрдЦреНрдп(рдХреЙрд▓рдмреИрдХ)}>




`
рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЗрд╕реЗ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рд╕рднреА рдХреЛрдб рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдПрдХ index.js рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рд╣реЛрддрд╛ рд╣реИ

рдирд┐рд╢рд╛рди

рдирд┐рд╢рд╛рди

рдирд┐рд╢рд╛рди

https://github.com/dvajs/dva/tree/master/examples/dynamic-load
рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВ рдСрди-рдбрд┐рдорд╛рдВрдб dva рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ?рдзрдиреНрдпрд╡рд╛рдж

рдирд┐рд╢рд╛рди

@AlaiNiGuests рдЖрдкрдХреЗ рдкрддреЗ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝, рдореИрдВрдиреЗ рджреЗрдЦрд╛, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ dva 2.x рдпрд╛ рдЗрд╕рдХреЗ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рд░рд╛рдЙрдЯрд░ 3.x рдпрд╛ 4.x рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ?

рдирд┐рд╢рд╛рди

рдореВрд▓ рдкреЛрд╕реНрдЯрд░ рдиреЗ рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛? рдХреНрдпрд╛ рдЖрдк рдХреЛрдб рдкреЛрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

zhuangtq picture zhuangtq  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mclouvem picture mclouvem  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

BenAnn picture BenAnn  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

huyawei picture huyawei  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

yunfeit picture yunfeit  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ