webpack中的externals无效是怎么回事?

我用vue-cli 全家桶开发的项目,后来看vendor.js太大了,就想把一些公共的框架提取出来,不再打包,而是直接script引入

index.html中

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
</head>
<body>
<div id="app"></div>
<script src="/static/assets/moment.min.js"></script>
<script src="/static/assets/vue.min.js"></script>
<script src="/static/assets/vuex.min.js"></script>
<script src="/static/assets/vue-router.min.js"></script>
<script src="/static/assets/vue-i18n.min.js"></script>
<script src="/static/assets/axios.min.js"></script>
<script src="/static/assets/bignumber.min.js"></script>

<!-- built files will be auto injected -->
</body>
</html>

/build/webpack.base.conf.js

module.exports = {
    externals: {
        'vue': 'Vue',
        'vue-router': 'VueRouter',
        'vue-i18n': 'VueI18n',
        'moment': 'moment',
        'axios': 'axios',
        'vuex': 'Vuex',
        'bignumber.js': 'BigNumber'
    }
}

但是通过npm run build 之后,还是打包再一起了。

阅读 7.3k
1 个回答

不需要打包的放在public目录下。项目里面不要再import

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题