Dva: Mengapa Dva memiliki semua kode dalam file index.js? Apakah ada demo yang dikemas dalam blok?

Dibuat pada 23 Des 2016  ·  19Komentar  ·  Sumber: dvajs/dva

Mengapa Dva memiliki semua kode dalam file index.js? Apakah ada demo yang dikemas dalam blok?

question

Komentar yang paling membantu

Semua 19 komentar

Saya melihat dan menemukan bahwa paket ini dalam file yang sama dan tidak terpisah?

Tidak memuat sesuai permintaan, tetapi memblokir pengemasan...

Untuk membongkar entri, Anda dapat mencoba CommonsChunkPlugin .

Proyek Vue yang saya tulis, proyek Vue diimplementasikan seperti ini:
rute:
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 } ] })
paket web:
output: { path: config.build.assetsRoot, publicPath: process.env.NODE_ENV === 'production' ? config.build.assetsPublicPath : config.dev.assetsPublicPath, filename: '[name].js' },
Tetapi mengonfigurasi ini di dva tidak berlaku

Bukankah ini hanya memuat sesuai permintaan?

Tidak, itu juga mengimplementasikan pengemasan blok.Misalnya, ada dua rute di sistem saya: a, b;
Terlepas dari mengakses a atau b dalam proyek dva, index.js yang diminta, semuanya berisi kode logika a dan b;
Dalam proyek vue, untuk mengakses halaman a, js yang diminta adalah a.index.js, dan untuk mengakses halaman b, js yang diminta adalah b.index.js.Tidak saling inklusif

https://github.com/dvajs/dva/blob/master/examples/dynamic-load/router.js#L6 -L27
Paragraf ini digunakan untuk mencapai efek dari proyek vue yang Anda gambarkan.

Saya telah melihat kode untuk perutean dinamis ini, tetapi saya belum menyadari idenya di proyek vue. Kode saya saat ini seperti ini
`const Login = c => require.ensure([], require => (
app.model(memerlukan('./models/login/loginModel')),
c(null, membutuhkan('./routes/login/Login'))
));

const Main = c => require.ensure([], require => (
app.model(memerlukan('./models/main/mainModel')),
c(null, membutuhkan('./routes/main/Utama'))
));

fungsi intersep izin() {
const token = kits.getCookies('tf-token');
const uid = kits.getCookies('tf-uid');
if (!uid || !token) {
app._store.dispatch(routerRedux.replace('/login'))
}
}

kembali getComponent={(lokasi, panggilan balik) => Masuk(panggilan balik)}/>
onenter={interceptPermissions()}
getComponent={(lokasi, panggilan balik) => Main(panggilan balik)}>




`
Itu belum diimplementasikan, tidak peduli itu dijalankan mulai atau dibangun semua kode adalah output ke file index.js

menandai

menandai

menandai

https://github.com/dvajs/dva/tree/master/examples/dynamic-load
Sudah dihapus, di mana saya bisa melihat konfigurasi dva sesuai permintaan?Terima kasih

menandai

@AlaiNiGuests Dokumen di alamat Anda, saya lihat, tidak boleh digunakan di dva 2.x atau di atasnya?
Apakah sintaks react-router 3.x atau 4.x?

menandai

Bagaimana poster asli menyelesaikannya? Bisakah Anda memposting kode? Terimakasih banyak!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat