2017-05-09 54 views
0

我的堆棧是:角1.6.4和節點v6.10.0。我使用Node作爲我的站點的主要路由,Angular用於子頁面。由於某些Angular限制(針對此問題的範圍),我針對同一網站有多個Angular應用。角和節點混亂變量

我問題是 - 每當我傳遞變量從角度控制器,該網站認爲它是從節點來因爲它們都具有相同的方法來檢測動態變量。下面

代碼:

var mainApp = angular.module('mainApp', []); 

mainApp.controller('testController', ['$scope', function($scope){ 

$scope.profileID = '12345678'; 
console.log('$scope.profileID is: ' + $scope.profileID);//This prints out just fine 

}]); 

HTML:

<!DOCTYPE html> 
<html lang="en" ng-app="mainApp"> 
<head> 
    <script src="/jsLib/angular.min.js"></script> 
    <script src="/angular/angularApp.js"></script> 
</head> 

<body ng-controller="testController"> 
    <div> 
    <p>{{profileID}}</p><!--This comes out as blank--> 
    </div> 
</body> 
</html> 

我知道我可以使用:$ interpolateProvider.startSymbol( '[{');和$ interpolateProvider.endSymbol('}]');改變符號但隨後,它打破了我正在使用的一些第三方工具,這些工具沒有被寫入來支持這一點。

有誰知道的另一種方式?另外,我從來沒有將任何事情從節點傳遞到前端。它純粹是爲了路由和API的目的,所以如果我可以阻止來自Node的這個「傳遞」變量,那就可以做到這一點。

由於

+0

我沒有看到該網站如何能「思考」它來自節點,作爲節點是服務器端和角度的客戶端,它們的代碼永遠不會混合,所以他們不能衝突。或者我錯過了什麼? –

+0

Angular和Node都將變量傳遞給HTML:{{varName}}。所以在這種情況下,它的確令人困惑。 –

回答

0

我固定這通過在初始app.js應用加入以下:

app.locals.delimiters = '<% %>'; 

順便說,我用的是「霍根快車」模板引擎。

希望這會派上用場的人在某些時候。我當時完全看錯了地方。