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)文章
Vue3中watch監(jiān)聽器及源碼學(xué)習(xí)
本文主要介紹了Vue3中watch監(jiān)聽器及源碼學(xué)習(xí),Watch偵聽器在Vue3中特性進(jìn)行了一些改變和優(yōu)化,下面來詳解的介紹一下基本使用,具有一定的參考價值,感興趣的可以了解一下2024-01-01

