在没有客户端发起请求的情况下将配置选项从 node/express 服务器传递到 Vue 应用程序的方法?
Ways to pass configuration options from node/express server to Vue app without a client-initiated request?
我感觉这个问题可能已经被问过并回答过好几次了,但一直找不到任何东西。可能是因为只有超级通用的搜索词可以使用。不管怎样:
我有一个 Node/Express 服务器,它处理一些 basic/administrative 后端的东西,还提供静态 Vue 应用程序,就像这样,在 app.js
:
app.use('/*', express.static('client-dist'))
...因此,只要 express 找不到匹配的路线,就会提供 vue 应用程序;所有其他路由都以 /api
.
为前缀
我希望能够在运行时通过该后端服务器配置 Vue 应用程序的某些方面。
在上面的 app.use
调用发生时,我有一个名为 clientConfig
的普通对象,它包含我想传递给 Vue 应用程序的所有信息,包括例如 API 调用的根 URL 以及我希望立即提供给客户端的各种其他内容。我正在使用 vuex,所以理想情况下,我希望在初始加载时将该对象的值插入到 vuex 存储中。
有没有办法将该对象注入 Vue,没有 例如加载 vue 应用程序后立即触发 axios 调用以检索它?感觉既然服务器是为 vue 应用程序提供服务的,那么应该有一些方法可以通过例如传递它。环境变量或类似的东西,但 webpack 对我来说仍然相当不透明,所以我很难想出一个好的方法。
任何不是在运行时动态生成的东西(例如 api 路由),最好将它们导出到 json 文件中并将其包含在您的前端构建中。
对于其他一切,我相信您的选择是有限的。最简单的方法 是 对服务器的 ajax 调用。
我感觉这个问题可能已经被问过并回答过好几次了,但一直找不到任何东西。可能是因为只有超级通用的搜索词可以使用。不管怎样:
我有一个 Node/Express 服务器,它处理一些 basic/administrative 后端的东西,还提供静态 Vue 应用程序,就像这样,在 app.js
:
app.use('/*', express.static('client-dist'))
...因此,只要 express 找不到匹配的路线,就会提供 vue 应用程序;所有其他路由都以 /api
.
我希望能够在运行时通过该后端服务器配置 Vue 应用程序的某些方面。
在上面的 app.use
调用发生时,我有一个名为 clientConfig
的普通对象,它包含我想传递给 Vue 应用程序的所有信息,包括例如 API 调用的根 URL 以及我希望立即提供给客户端的各种其他内容。我正在使用 vuex,所以理想情况下,我希望在初始加载时将该对象的值插入到 vuex 存储中。
有没有办法将该对象注入 Vue,没有 例如加载 vue 应用程序后立即触发 axios 调用以检索它?感觉既然服务器是为 vue 应用程序提供服务的,那么应该有一些方法可以通过例如传递它。环境变量或类似的东西,但 webpack 对我来说仍然相当不透明,所以我很难想出一个好的方法。
任何不是在运行时动态生成的东西(例如 api 路由),最好将它们导出到 json 文件中并将其包含在您的前端构建中。
对于其他一切,我相信您的选择是有限的。最简单的方法 是 对服务器的 ajax 调用。