如何将配置从ExpressJS发送到Aurelia

时间:2016-07-19 17:18:25

标签: express configuration aurelia bootstrapping

我正在建立一个基于https://github.com/Vheissu/aurelia-starter-node的网站。它将在/ api区域有一些后端逻辑,并且还将有一个由Aurelia处理的SPA区域。我想:

  • 使用require('config')
  • 在快递应用(https://www.npmjs.com/package/config)中阅读配置
  • 在服务器上使用此配置(通常的东西)
  • 在客户端上使用此配置的子集(在Aurelia应用程序中)

我知道https://github.com/Vheissu/Aurelia-Configuration但我不想维护由不同库处理的两个配置集,处理在两个地方设置环境等。

问题:有没有一种干净的方式来做我想要的事情?

到目前为止我的想法:

  • 将某些内容传递给aurelia bootstrapping逻辑,但我无法找到有关此内容的任何信息
  • 丑陋的解决方案:将配置作为全局变量呈现到index.html(作为SPA的母版页的那个)并从Aurelia代码中读取它,更像是How to pass data from ASP.NET WebForms to Aurelia Global Scope

1 个答案:

答案 0 :(得分:0)

我最终将配置保留在服务器代码中,并将其客户端部分仅渲染到页面正文中,如下所示:

为我的应用定义aurelia路线时:

<script>
    var config = <%- JSON.stringify(clientConfig) %>;
</script>

然后在视图中(使用ejs模板):

drwxr-xr-x  2 www-data       forexamplejohn 4096 Dec 16 10:52 aptemp

对我而言,这比在两个地方维护配置要干净得多。