我想使用ElementUi中的一些精心挑选的组件,而不是完整的捆绑包。
我正在使用laravel-mix来编译和缩小我的包。
似乎我在我的App.vue
.
import Vue from 'vue';
import { Button, Select } from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(Button)
Vue.use(Select)
const app = new Vue({
el: '#app'
});
和
import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
new Vue({
el: '#app'
});
两者最终都被编译成app.js
size 687kb
。这是为什么?
这是我的webpack.mix.js
配置:
const mix = require('laravel-mix');
mix.webpackConfig({
externals: {
vue: 'Vue'
}
});
mix.options({
extractVueStyles: 'public/css/components.css',
purifyCss: true,
});
mix.js('resources/assets/js/app.js', 'public/js')
如果我尝试与 Buefy 进行相同的操作,则包大小有很大差异,表 + 输入仅50kb
在完整包为222kb
.