Vue3.x 出现 _unref is not defined 错误,vue3使用图片img src require 动态修改图片。

TIP
截止至 2021-07-16 ,< script setup> 方案已在 Vue 3.2.0-beta.1 版本中脱离实验状态,正式进入 Vue 3.0 的队伍,在新的版本中已经可以作为一个官方标准的开发方案使用(但初期仍需注意与开源社区的项目兼容性问题,特别是 UI 框架)。
另外,Vue 的 3.1.2 版本是针对 script-setup 的一个分水岭版本,自 3.1.4 开始 script-setup 进入定稿状态,部分旧的 API 已被舍弃,

项目场景:

项目版本:
vue版本3.2.31 + 使用 setup 函数的语法糖
出现了ReferenceError: _unref is not defined的错误


问题描述

在vue3.2+版本上,使用< script setup> 方案时代码如下:

<template>
    <img :src="require(`@/assets/images/icon_num_${state.lotteryNum}.png`)" alt="" />
</template>
<script setup lang="ts">
import {reactive} from 'vue'
const state = reactive({
    lotteryNum:1,
})
</script>

在本地运行时,是没有问题的。
但是在打包,放到线上之后,控制台会出现报错信息:ReferenceError: _unref is not defined在这里插入图片描述


原因分析:

个人猜测是:Build 不会解析 :src=“require()” 中的计算属性。


解决方案:

暂时不要这样使用

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

回忆哆啦没有A梦

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值