2014-03-04 52 views
1

我被傳遞配置給我們的角度應用卡住了。我的問題是Angular.js>如何管理配置

  1. 我們已經配置存儲在數據庫中,到目前爲止,它的Web服務的URL與
  2. 頁面是由PHP呈現

我如何可以通過存儲在數據庫中的URL進行溝通NG-應用程序嗎?

到目前爲止,我已經硬編碼services.js

app.constant('config', {ws_url: 'ws://domain/ws'}); 

app.factory('wampy', function ($rootScope, config) { 

    var url = config.ws_url; 
    var ws = new Wampy(url, { autoReconnect: true }); 

    return { 
    something: function() { 
     console.log(url); // usage of url 
    } 
    } 

} 

然後將其納入主要的html代碼(的index.php)

<head> 
    <script type="text/javascript" src="http://dev.local/js/ng/app.js"></script> 
    <script type="text/javascript" src="http://dev.local/js/ng/services.js"></script> 
</head> 

但它可以修改/移動到某個地方其他。

有什麼想法?

回答

2

你可以有由PHP呈現插入腳本代碼的JavaScript代碼段像這樣

$config = array('ws_url' => 'ws://domain/ws'); 
$jsonConfig = json_encode($config); 

$snippet = <<<EOS 
    <script type="text/javascript"> 
     angular.module('appName').constant('config', $jsonConfig); 
    </script> 
EOS; 

,然後輸出這個$snippet在你的頁面的某個地方。