2014-12-01 77 views
2

我有一个托管在/public一个独立的前端应用程序和REST API的一个节点应用。前端应用程序仅通过REST与后端进行通信,但现在我需要发送初始应用程序负载的一些基本配置信息。通过节点将数据发送到前端应用程序?

与页面加载时发出ajax请求不同,我想在请求/index.html时发送所需的配置信息,因为它是运行应用程序所必需的。

什么是设置最简单的方法的一些基本配置?

有没有一种方法可以让我成为通过节点的一些脚本,然后从服务器参数呢?

喜欢的东西 /scripts/config.js

angular.constant('value1', '#{some parameterized server value}'); 

我用快递。

回答

2

您可以再补充,供应了配置的路由。 有点像。

app.get('/scripts/config.js', function(req, res) { 
    var content = 'angular.module(\'config\', [])\n'; 
    content += ' .constant(\'value1\', ' + someValue + ')'; 
    res.set('Content-Type', 'text/javascript'); 
    return res.send(content); 
} 
1

做未做一个Ajax请求的唯一方法是在您的index.html你可以点读/写你的配置属性这个文件config.json文件。

在角执行的顺序是:

  1. app.config()
  2. app.run()
  3. 编译功能指令
  4. app.controller
  5. 指令联

你可以把您在app.config()app.run()中的kickstarting逻辑。

我相信,最好的做法,虽然是独立的你的配置逻辑模块中,并使用$ HTTP动态获取的属性。

+0

只是一般性评论..除非最近有什么变化,你不能在app.config中使用$ http。所以不幸的是,你不能使用它来引导应用程序。即使你可以,应用程序也不会在进入运行阶段之前等待承诺。如果我在这里错了(而且我愿意这样做),让我知道。 – Stephen 2014-12-01 20:21:36

+0

你没有错,事实上你是对的。这就是为什么我从不在'config()'或'run()'中使用$ http的原因,而是在一个单独的模块中。 – Thanos 2014-12-01 20:40:54

+0

对,对。男人,多么沮丧。这个小功能可能会造成如此大的差别。*叹* – Stephen 2014-12-01 21:37:23

相关问题