【发布时间】:2021-10-03 08:53:26
【问题描述】:
我必须调用 API (json-server) 来检索数据,以便在我的 Vue 应用程序中填充我的下拉菜单。我想创建一个外部配置文件,而不是在应用程序中进行硬编码,我可以在其中放置任何链接并最终放置服务器详细信息以进行部署。目前,我有这个,但由于某种原因,当我在我的 vue 组件中引用 Key 时,它说它未定义。我不确定我哪里出错了。
/public/config.json
{
"API_URL": "localhost:3000"
}
这里是main.js文件的相关部分:
/main.js
fetch(process.env.BASE_URL+ "config.json")
.then((json) => {
json().then((config) => {
Vue.prototype.$config = config
new Vue({
router,
store,
render: (h) => h(App)
}).$mount("#app")
})
})
在我的 Vue 组件中,我试图像这样引用它,但它显示为未定义。
<script>
export default {
mounted() {
fetch(this.$config.API_URL)
.then(res => res.json())
.then(data => this.mailboxes = data)
.catch(err => console.log(err.message))
}
}
</script>
如果有其他方法可以解决这个问题,请告诉我。
【问题讨论】:
-
我认为
.env文件是解决方案,只需确保将他添加到您的 .gitignore 中,更多详细信息请查看 officiel doc
标签: javascript json vue.js vuejs2 config