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

在Vue SFC Playground中导入VueUse后响应性失效的问题求助

VueUse通过Import Map引入后响应性失效的解决办法

问题场景

配置Import Map引入VueUse:

"@vueuse/core": "https://www.unpkg.com/@vueuse/core?module"

导入过程无报错,但VueUse工具函数的响应性完全不生效。

核心原因

  1. 版本不兼容:未指定版本时,unpkg默认拉取的VueUse版本可能和当前项目的Vue版本不匹配(比如VueUse 10.x需要Vue 3.2+),导致响应式API无法正常绑定。
  2. 模块入口问题:?module参数的自动解析可能返回非最优的ES模块版本,甚至混入CommonJS转译代码,破坏了VueUse的响应式逻辑。

解决方案

1. 修正Import Map配置,明确指定兼容版本

直接指向VueUse的ES模块入口,并同步指定匹配的Vue版本,示例:

{
  "imports": {
    "@vueuse/core": "https://unpkg.com/@vueuse/core@10.9.0/dist/index.mjs",
    "vue": "https://unpkg.com/vue@3.4.21/dist/vue.esm-browser.js"
  }
}
  • 选择和当前Vue版本兼容的VueUse版本(可查看VueUse官方文档确认版本对应关系)
  • 直接使用.mjs后缀的ES模块入口,避免unpkg的自动解析歧义

2. 确保正确的导入方式

必须使用命名导入VueUse的工具函数,示例:

<script setup>
import { useCounter } from '@vueuse/core'
const count = useCounter(0)
</script>

<template>
  <button @click="count.increment()">Count: {{ count }}</button>
</template>

不要使用默认导入,VueUse的ES模块仅提供命名导出。

3. 验证版本匹配

确认Vue版本满足VueUse的要求:

  • VueUse 9.x/10.x 要求Vue 3.2.0+
  • 若使用Vue 2.x,需使用VueUse 8.x版本并配合@vue/composition-api

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 08:50:58