You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过URL导入模块?Vue应用中使用CDN引入npm包的方法咨询

Vue项目使用CDN引入UMD格式npm包的方案

前置操作

首先将包的CDN地址引入到项目入口HTML文件中,需要放在Vue资源的引入顺序之后,推荐放在<body>标签末尾:

<script src="https://cdn.jsdelivr.net/npm/my-package@1.1.0/dist/my-package.umd.min.js"></script>

UMD格式的包引入完成后会自动挂载到浏览器window全局对象上,通常全局变量名和包名对应(比如示例的my-package对应的全局变量一般为MyPackage,如果不确定可以引入后在浏览器控制台打印window对象查找对应属性)。

场景1:无构建工具,直接在HTML中使用Vue

直接在Vue实例逻辑中调用全局挂载的对象即可:

// Vue3 示例
const app = Vue.createApp({
  setup() {
    // 直接调用包提供的方法
    const data = MyPackage.getSomething()
    return { data }
  }
})
// 如果该包是Vue插件,直接注册即可
app.use(MyPackage)
app.mount('#app')
// Vue2 示例
new Vue({
  el: '#app',
  created() {
    const data = MyPackage.getSomething()
  }
})
// 插件注册
Vue.use(MyPackage)

场景2:使用Vite/Webpack等构建工具的工程化Vue项目

需要先在构建配置中声明该包为外部资源,避免构建时重复打包:

Vite 项目配置(vite.config.js)

import { defineConfig } from 'vite'
export default defineConfig({
  build: {
    rollupOptions: {
      external: ['my-package'],
      output: {
        globals: {
          'my-package': 'MyPackage' // 和全局挂载的变量名保持一致
        }
      }
    }
  }
})

Vue CLI/Webpack 项目配置(vue.config.js)

module.exports = {
  configureWebpack: {
    externals: {
      'my-package': 'MyPackage' // 和全局挂载的变量名保持一致
    }
  }
}

配置完成后,项目中可以保持原来npm安装时的引入用法,无需修改业务代码:

import MyPackage from 'my-package'
// 按需引入方法也可以正常使用
import { doSomething } from 'my-package'

内容的提问来源于stack exchange,提问作者Sagar Jajoriya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 19:12:03