我正在开发 Vuejs 应用程序。基于 Quasar Framework ,在 src/components/Hello.vue 我有一个函数来加载 json 文件
axios.get('../assets/json/ar/myfile.json')
.then(response => {
// JSON responses are automatically parsed.
console.log(response)
})
.catch(e => {
this.errors.push(e)
})
它返回错误,GET http://localhost:8080/assets/json/ar/ch78.json 404 (Not Found)
所以我的问题是如何从 src/assets 文件夹中获取文件?
axios.get('../assets/json/ar/myfile.json')
这一行需要更正
最佳答案
如果数据是静态的(如本例),您可以这样导入它:
import myFile from './json/ar/myfile.json'
console.log(myFile.someProp); // will work
据我所知Quasar Framework已经配置了json
loader
如果数据是动态的(例如,您在编译时不知道文件名),您应该将服务器域存储在配置中的某个位置,并将其与您的动态路径结合起来。它可能看起来像这样:
import { BASE_URL } from './config'
const lang = getCurrentLang(); // this is dynamic
axios.get(`${BASE_URL}/assets/json/${lang}/myfile.json`)
.then()
.catch();
在这种情况下,./config
可能如下所示:
export const BASE_URL = 'http://localhost:8080';
关于vue.js - VueJs 本地资源路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46445425/