我不会使用Vue.js创建客户端应用程序。目前,我面临的问题是:如何获取后端服务的地址?
对于要回答该问题的解决方案,我有一个主要限制:最终的客户端工件(构建过程的结果,“ vue-cli-service构建”)必须与环境无关。这个很重要!这意味着绝对不应内置任何特定于环境的信息。如果我的后端服务的地址发生更改,则不必构建新的客户端构件。只需重新配置生产环境并重用当前的客户端工件就可以。
我的方法是添加一个额外的配置文件,该文件由同一台Web服务器提供,该服务器还提供了我的Vue.js客户端:/configuration.json或类似的东西。该配置文件可以包含我需要的信息。这种方法可以分为3个子任务: (a)向Vue.js客户端添加功能以从Web服务器(也提供客户端)读取configuration.json。这应该很容易。 (b)找到让生产Web服务器交付此configuration.json的方法。我已经对此有一些想法。 (c)找到一种方法,让本地开发服务器交付附加的configuration.json。
我最大的问题是(c)现在。我不知道如何配置由“ vue-cli-service serve”启动的本地开发服务器。
任何想法如何解决(c)?也许您还知道更好的方法?
答案 0 :(得分:0)
我只是对另一个问题提供以下答案,但它也可能适用于您的问题。如果您需要从JSON文件加载特定的预设。我想如何产生该JSON文件是一个单独的问题。
我曾经有过类似的案例,需要调整一些预设 无需每次都重建项目。我最终移动了Vue 在异步Axios函数中呈现应用程序的对象。当然 它会影响加载时间,因为它会等待JSON文件生成 在我看来,这并不重要。这是这样的总结 设置。
axios.get('./config.json')
.then(function(response) {
let config = response.data
//commit data to vuex store for example
new Vue({
store,
render: h => h(App)
}).$mount('#app')
})
.catch(function(error) {
console.log(error)
})