Vue 打包后 vendor.js 太大,因此我准备将一些 js 放到 CDN 上。
如 element-ui , 我在 webpack.base.conf.js 配置如下:
externals: {
'vue': 'Vue',
'element-ui': 'ELEMENT'
}
index.html 添加了 :
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
<!-- 引入样式 -->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<!-- 引入组件库 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
main.js 中移除了相关导入 ,如下三行,已全部移除
import Vue from 'vue'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
上述配置后,生产环境确实是使用了 CDN。但是这样配置后,我在开发环境下,IDE 却无法智能提示,比如我有一个 HomeContainer.vue 中使用了 ElementUI 的组件 ,结果如下图 :
或者在 html 文件中
没有提示重影响开发,因此我想在开发环境使用 npm,生产环境使用 CDN,应该如何配置?
注 :IDE 为 webstorm
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.