Когда я строю свой пакет (работает отлично), я обнаружил, что два фрагмента (имена, начинающиеся с 0 и 1; 1.08Mb и 1.07Mb соответственно) почти полностью похожи. Содержимое блока 1 полностью покрывается содержимым блока 0, а фрагмент 0 немного больше, содержащий дополнительный компонент дочернего vue. Мне кажется, что все импорт компонента child.vue снова включается, когда компонент child.vue импортируется в компонент parent.vue. Я думал, что веб-пакет будет сорннуть это ... но, видимо, нет.duplicate webpack (2.2.0) chunks с vue-компонентами
parent.vue компонент:
<script type='text/babel'>
import Child from './Child.vue'
export default {
name: 'parent',
components: {Child}
}
</script>
соответствующая часть child.vue компонента:
<script type='text/babel'>
import turf from 'turf'
import {resize} from '@most/dom-event'
[[etc]]
в router.js:
routes: [
{ path: '/parent', component: load('parent') },
{ path: '/', component: load('Index') }, // Default
{ path: '*', component: load('Error404') } // Not found
]
})
Я также ожидаю, что дерн и все другие пакеты npm от node_modules, чтобы перейти в отдельный кусок поставщика, но они находятся как в блоке 0, так и в 1: (т. е. нет кусков поставщика):
Hash: 1b94a25680bff29f4960
Version: webpack 2.2.0
Time: 44975ms
Asset Size Chunks Chunk Names
js/5.ceea6d62238ac33ab65a.js 987 bytes 5, 8 [emitted]
fonts/MaterialIcons-Regular.012cf6a.woff 57.6 kB [emitted]
js/1.00c968884dd42ca9abe7.js 1.07 MB 1, 8 [emitted] [big]
js/2.a15df363f7a95520359b.js 6.28 kB 2, 3, 5, 8 [emitted]
js/3.09b86cd9939dea1b32d0.js 2.53 kB 3, 8 [emitted]
js/4.1de965c7ddc632ca7966.js 1.95 kB 4, 8 [emitted]
js/0.5c94c88f8cc301c30326.js 1.08 MB 0, 1, 8 [emitted] [big]
js/vendor.js 562 kB 6, 8 [emitted] [big] vendor
js/app.js 9.68 kB 7, 8 [emitted] app
js/manifest.js 1.58 kB 8 [emitted] manifest
app.8a73cdb0886334e9bc2ff358859b1203.css 246 kB 7, 8 [emitted] app
index.html 616 bytes [emitted]
Process finished with exit code 0
Что я делаю неправильно ?:
- почему у меня повторяющийся код в моих кусках?
- Почему библиотеки node_module не находятся в блоке поставщика?