如何在AngularJS中外部配置工厂

Chi*_*han 2 javascript angularjs

假设我正在使用AngularJS构建一个C#应用程序.

我想设置来自服务器端的配置对象,并基本上将该配置注入工厂.工厂所在的另一个.JS文件.

怎么会这样做?

我在这里设置了一个JS小提琴示例:

http://jsfiddle.net/f89tS/7/

pko*_*rce 9

您可以将模块的常量用于来自服务器的配置对象.使用常量非常简单,您可以在服务器端生成:

app.constant('CONSTANTS', {zoomLevel: 8});
Run Code Online (Sandbox Code Playgroud)

然后,在你的工厂,你可以注入常数:

app.factory('map', function(CONSTANTS){
    return {
        zoomLevel: CONSTANTS.zoomLevel  
    };
});
Run Code Online (Sandbox Code Playgroud)

常量对于服务器生成的设置非常有用,因为一旦生成并发送到客户端,那些就无法改变.

最后,这是工作的jsFiddle:http://jsfiddle.net/pkozlowski_opensource/JZcys/1/