vue3+vite:src使用require動(dòng)態(tài)導(dǎo)入圖片報(bào)錯(cuò)怎么解決
May 21, 2023 pm 03:16 PMvue3+vite:src使用require動(dòng)態(tài)導(dǎo)入圖片報(bào)錯(cuò)和解決方法
vue3 + vite 動(dòng)態(tài)的導(dǎo)入多張圖片
vue3 如果使用的是typescript開發(fā),就會(huì)出現(xiàn)require引入圖片報(bào)錯(cuò),require is not defined 不能像使用vue2 這樣imgUrl: require(’…/assets/test.png’) 導(dǎo)入,是因?yàn)閠ypescript不支持require
所以用import導(dǎo)入,下面介紹如何解決: 使用await import(’@/assets/img/22.png’);
demo1.vue
<template> <img :src="imgUrl" alt=""> </template> <script> import {ref, onMounted} from "vue"; export default { name: "imgPage", setup(){ onMounted(()=>{ handleImgSrc(); }) const imgUrl = ref(''); const handleImgSrc = async()=>{ let m = await import('@/assets/img/22.png'); imgUrl.value = m.default; }; return{ imgUrl } } } </script>
demo2.vue 循環(huán)利用返回值請(qǐng)求本地圖片
<template> <img v-for="item in imgList" :src="getAssetsImages(item.url)" alt=""> </template> <script> import {ref, reactive, onMounted} from "vue"; export default { name: "imgPage", setup(){ const imgList = reactive([ {url: 'a.png'},{url: 'b.png'},{url: 'c.png'} ]) const getAssetsImages =(name)=> { return new URL(`/src/assets/pic/${name}`, import.meta.url).href; //本地文件路徑 } return{ imgList , getAssetsImages } } } </script>
記錄一下使用vue3遇到的問題,或許還有別的辦法解決圖片引入問題,還請(qǐng)各位指教~
補(bǔ)充:vue3+vite :src 用require引入絕度路徑報(bào)錯(cuò)
最近的項(xiàng)目是vue3+vite,在使用require引用圖片路徑的時(shí)候就報(bào)錯(cuò) require is not defined,就很尷尬,因?yàn)閠ypescript不支持require所以之前直接用imgUrl: require(’…/assets/test.png’) 導(dǎo)入就會(huì)報(bào)錯(cuò)需要用import導(dǎo)入,記錄一下解決方法:
第一種:使用await import(’@/assets/img/22.png’);
<template> <img :src="imgUrl" alt=""> </template> <script> import {ref, onMounted} from "vue"; export default { name: "imgPage", setup(){ onMounted(()=>{ handleImgSrc(); }) const imgUrl = ref(''); const handleImgSrc = async()=>{ let m = await import('@/assets/img/22.png'); imgUrl.value = m.default; }; return{ imgUrl } } } </script>
第二種:循環(huán)利用返回值請(qǐng)求本地圖片
<template> <img v-for="item in imgList" :src="getAssetsImages(item.url)" alt=""> </template> <script> import {ref, reactive, onMounted} from "vue"; export default { name: "imgPage", setup(){ const imgList = reactive([ {url: 'a.png'},{url: 'b.png'},{url: 'c.png'} ]) const getAssetsImages =(name)=> { return new URL(`/src/assets/pic/${name}`, import.meta.url).href; //本地文件路徑 } return{ imgList , getAssetsImages } } } </script>
以上是vue3+vite:src使用require動(dòng)態(tài)導(dǎo)入圖片報(bào)錯(cuò)怎么解決的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機(jī)

Video Face Swap
使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級(jí)代碼編輯軟件(SublimeText3)

Vue3+TS+Vite開發(fā)技巧:如何進(jìn)行SEO優(yōu)化SEO(SearchEngineOptimization)是指通過優(yōu)化網(wǎng)站的結(jié)構(gòu)、內(nèi)容和關(guān)鍵詞等方面,使其在搜索引擎的排名更靠前,從而增加網(wǎng)站的流量和曝光度。在Vue3+TS+Vite等現(xiàn)代前端技術(shù)的開發(fā)中,如何進(jìn)行SEO優(yōu)化是一個(gè)很重要的問題。本文將介紹一些Vue3+TS+Vite開發(fā)的技巧和方法,幫

想要實(shí)現(xiàn)頁面的局部刷新,我們只需要實(shí)現(xiàn)局部組件(dom)的重新渲染。在Vue中,想要實(shí)現(xiàn)這一效果最簡(jiǎn)便的方式方法就是使用v-if指令。在Vue2中我們除了使用v-if指令讓局部dom的重新渲染,也可以新建一個(gè)空白組件,需要刷新局部頁面時(shí)跳轉(zhuǎn)至這個(gè)空白組件頁面,然后在空白組件內(nèi)的beforeRouteEnter守衛(wèi)中又跳轉(zhuǎn)回原來的頁面。如下圖所示,如何在Vue3.X中實(shí)現(xiàn)點(diǎn)擊刷新按鈕實(shí)現(xiàn)紅框范圍內(nèi)的dom重新加載,并展示對(duì)應(yīng)的加載狀態(tài)。由于Vue3.X中scriptsetup語法中組件內(nèi)守衛(wèi)只有o

Vue3+TS+Vite開發(fā)技巧:如何進(jìn)行前端安全防護(hù)隨著前端技術(shù)的不斷發(fā)展,越來越多的企業(yè)和個(gè)人開始使用Vue3+TS+Vite進(jìn)行前端開發(fā)。然而,隨之而來的安全風(fēng)險(xiǎn)也引起了人們的關(guān)注。在本文中,我們將探討一些常見的前端安全問題,并分享一些在Vue3+TS+Vite開發(fā)過程中如何進(jìn)行前端安全防護(hù)的技巧。輸入驗(yàn)證用戶的輸入往往是前端安全漏洞的主要來源之一。在

Vue3+TS+Vite開發(fā)技巧:如何進(jìn)行數(shù)據(jù)加密和存儲(chǔ)隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,數(shù)據(jù)的安全性和隱私保護(hù)變得越來越重要。在Vue3+TS+Vite開發(fā)環(huán)境下,如何進(jìn)行數(shù)據(jù)加密和存儲(chǔ),是每個(gè)開發(fā)人員都需要面對(duì)的問題。本文將介紹一些常用的數(shù)據(jù)加密和存儲(chǔ)的技巧,幫助開發(fā)人員提升應(yīng)用的安全性和用戶體驗(yàn)。一、數(shù)據(jù)加密前端數(shù)據(jù)加密前端加密是保護(hù)數(shù)據(jù)安全性的重要一環(huán)。常用

vue3+vite:src使用require動(dòng)態(tài)導(dǎo)入圖片報(bào)錯(cuò)和解決方法vue3+vite動(dòng)態(tài)的導(dǎo)入多張圖片vue3如果使用的是typescript開發(fā),就會(huì)出現(xiàn)require引入圖片報(bào)錯(cuò),requireisnotdefined不能像使用vue2這樣imgUrl:require(’…/assets/test.png’)導(dǎo)入,是因?yàn)閠ypescript不支持require所以用import導(dǎo)入,下面介紹如何解決:使用awaitimport

Vue3+TS+Vite開發(fā)技巧:如何進(jìn)行跨域請(qǐng)求和網(wǎng)絡(luò)請(qǐng)求優(yōu)化引言:在前端開發(fā)中,網(wǎng)絡(luò)請(qǐng)求是非常常見的操作。如何優(yōu)化網(wǎng)絡(luò)請(qǐng)求以提高頁面加載速度和用戶體驗(yàn)是我們開發(fā)者需要思考的問題之一。同時(shí),對(duì)于一些需要向不同域名發(fā)送請(qǐng)求的場(chǎng)景,我們需要解決跨域問題。本文將介紹如何在Vue3+TS+Vite開發(fā)環(huán)境下進(jìn)行跨域請(qǐng)求以及網(wǎng)絡(luò)請(qǐng)求的優(yōu)化技巧。一、跨域請(qǐng)求解決方案使

最終效果安裝VueCropper組件yarnaddvue-cropper@next上面的安裝值針對(duì)Vue3的,如果時(shí)Vue2或者想使用其他的方式引用,請(qǐng)?jiān)L問它的npm官方地址:官方教程。在組件中引用使用時(shí)也很簡(jiǎn)單,只需要引入對(duì)應(yīng)的組件和它的樣式文件,我這里沒有在全局引用,只在我的組件文件中引入import{userInfoByRequest}from'../js/api'import{VueCropper}from'vue-cropper&

vue3+ts+axios+pinia實(shí)現(xiàn)無感刷新1.先在項(xiàng)目中下載aiXos和pinianpmipinia--savenpminstallaxios--save2.封裝axios請(qǐng)求-----下載js-cookienpmiJS-cookie-s//引入aixosimporttype{AxiosRequestConfig,AxiosResponse}from"axios";importaxiosfrom'axios';import{ElMess
