vue3+vite加載本地js/json文件不能使用require淺析
vue3+vite項目不能通過require引入文件,因為require是webpack自己封裝的方法,在vite中沒有封裝該方法所以在調(diào)用require時會報錯。
初始化引入本地文件可直接通過import進(jìn)行引入
import booksData from '@/data/zhouyi/yijing_yuanzhu/json/data.json';
如果需要動態(tài)引入,則需要通過axios進(jìn)行引入
安裝axios:
npm install axios
注意:如果默認(rèn)安裝最新的axios,運(yùn)行項目可能會報錯(Cannot read property 'FormData' of undefined)然后頁面空白,原因是axios 1.0之后版本會報錯,解決方法就是降低版本。
先卸載
npm uninstall axios
安裝指定版本
npm install axios@0.27.2 --save
將axios掛載在全局方便使用,在main.js中
import { createSSRApp } from 'vue' import App from './App.vue' import axios from "axios" export function createApp() { const app = createSSRApp(App) // 掛載全局方法 app.config.globalProperties.$axios = axios return { app } }
通過axios請求本地文件
const { proxy } = getCurrentInstance(); proxy.$axios.get('/data/zhouyi/yijing_yuanzhu/json/data.json').then(res => { console.log(res); });
注意:import只能初始化就引入,如果需要通過條件動態(tài)引入,則需要使用axios;import引入文件路徑前面有@,而axios請求路徑不需要加@。
總結(jié)
到此這篇關(guān)于vue3+vite加載本地js/json文件不能使用require的文章就介紹到這了,更多相關(guān)vue3+vite加載本地js/json文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue 驗證碼界面實現(xiàn)點(diǎn)擊后標(biāo)灰并設(shè)置div按鈕不可點(diǎn)擊狀態(tài)
今天小編就為大家分享一篇vue 驗證碼界面實現(xiàn)點(diǎn)擊后標(biāo)灰并設(shè)置div按鈕不可點(diǎn)擊狀態(tài),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10vue輪播組件實現(xiàn)$children和$parent 附帶好用的gif錄制工具
這篇文章主要介紹了vue輪播組件實現(xiàn),$children和$parent,附帶好用的gif錄制工具,需要的朋友可以參考下2019-09-09vue中的雙向數(shù)據(jù)綁定原理與常見操作技巧詳解
這篇文章主要介紹了vue中的雙向數(shù)據(jù)綁定原理與常見操作技巧,結(jié)合實例形式詳細(xì)分析了vue中雙向數(shù)據(jù)綁定的概念、原理、常見操作技巧與相關(guān)注意事項,需要的朋友可以參考下2020-03-03vue3?騰訊地圖設(shè)置簽到范圍并獲取經(jīng)緯度的實現(xiàn)代碼
本文給大家介紹vue3?騰訊地圖設(shè)置簽到范圍并獲取經(jīng)緯度的實現(xiàn)代碼,本文通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2022-05-05vue之字符串、數(shù)組之間的相互轉(zhuǎn)換方式
這篇文章主要介紹了vue之字符串、數(shù)組之間的相互轉(zhuǎn)換方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07