2014-07-18 18 views
0

我有一個這樣的模板。AngularJS:ng-app內ng-include

<body ng-app="demo" ng-controller="demo"> 
    <div ng-include="/main.html"> 
    </div> 
</body> 

而main.html是。

<div ng-app="main" ng-controller="main> 
    "" 
</div> 

這裏是js。

JS-1

var myapp = angular.module('demo', []); 
myapp.controller('demo', function($scope,$routeParams, $route,$http) { 
$scope.variable="444" 
}) 

JS-2

var mainapp = angular.module('mainapp', []); 
myapp.controller('main', function($scope,$routeParams, $route,$http) { 

}) 

是否有可能訪問內部JS-2 JS-1的範圍?如果是怎麼樣,如果沒有解決這個問題的方法。謝謝。

+0

如果你不介意的話,我建議你花一些時間,觀察UI路由器:https://github.com/angular-ui/ui-router/wiki,有SOM鏈接解釋它更多http://stackoverflow.com/a/24693129/1679310 ...從我的角度來看 - 這個角色的awsome狀態機庫可以爲你做很多... –

+0

爲什麼你不試試服務? –

回答

0

這取決於你想要做什麼。 如果你想從JS-1讀取$ scope.variable變量,你應該在JS-2 $ scope中看到它。 如果你想修改$ scope.variable形式JS-1,你應該在JS-1 create方法:

$scope.changes = function(data){ 
     $scope.variable = data; 
} 

這種方法也應該在JS-2 $範圍可用。

這不是很好的解決方案,但應該工作。 最好的解決方案是創建將在JS-1領域提供操作的服務。

相關問題