详解vue.config.js的特殊配置说明

js 复制代码
 configureWebpack: {
    optimization: {
      minimize: process.env.NODE_ENV === 'production',
    },
    resolve: {
      extensions: ['.js', '.vue', '.ts', '.json'],
      alias: {
        '@': path.join(__dirname, '/'),
      },
    },
    externals: {
      vue: 'Vue',
      vuex: 'Vuex',
      'vue-router': 'VueRouter',
    },
    plugins: process.env.NODE_ENV === 'production' ? [] : [],
  },

vue.config.js 文件中,externals 配置选项是用来指定不应该被 webpack 打包的模块,而是在运行时从环境中获取。这意味着这些模块应该作为外部依赖存在,而不是被包含在最终的 bundle 中。

这意味着 webpack 将不会打包 Vue、Vuex 和 Vue Router,而是假设这些库在运行时是可用的。这通常用于库开发,当你想要创建一个库,并希望用户能够自己提供这些依赖项,而不是将它们打包进库中。 此时就需要在html中引入对应的js,

html:

js 复制代码
 <script src="https://cdnweb.ciccwm.com/zzt/static/js/vue/vue2.7.runtime.min.js"></script>
 <script src="https://cdnweb.ciccwm.com/zzt/static/js/vue/vue-router.min.js"></script>

然而,对于大多数 Vue CLI 创建的项目来说,你通常想要 webpack 将这些依赖项打包进最终的 bundle 中,以便在没有这些全局变量可用的环境中也能运行。因此,externals 配置在这里可能是不合适的。

如果你想要确保 Vue、Vuex 和 Vue Router 是从项目中读取的,而不是作为外部依赖,你应该移除或注释掉。

相关推荐
NiceCloud喜云7 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
wordbaby8 小时前
React Native + RNOH:跨页面数据回传的最佳实践与避坑指南
前端·react native
丷丩8 小时前
MapLibre GL JS第22课:查看本地GeoJSON
前端·javascript·map·mapbox·maplibre gl js
Front思9 小时前
AI前端工程师需要具备能力+
前端·人工智能·ai
ZC跨境爬虫11 小时前
跟着 MDN 学CSS day_29:(掌握文本与字体样式的核心艺术)
前端·css·ui·html·tensorflow
李子琪。12 小时前
网络空间安全深度实战:CSRF 漏洞原理剖析与基于 Token 的纵深防御体系构建(全栈实验报告)
前端·安全·csrf
冰暮流星12 小时前
javascript之history对象介绍
前端·笔记
IT_陈寒12 小时前
Vite热更新失灵?你可能漏了这个配置
前端·人工智能·后端
丷丩12 小时前
MapLibre GL JS第19课:实时更新要素
前端·javascript·gis·map·mapbox·maplibre gl js
Mr.Daozhi12 小时前
RAG 进阶实战:跑通 Demo 后我连续翻了 6 次车,逐一修复才真正可用(含 Gradio Web 版)
前端·数据库·langchain·大模型·gradio·rag·科研工具