2014-11-08 53 views
1

使用下面的代碼我無法獲得我的父範圍或$ scope來綁定。

的index.html

<div ng-controller="MainCtrl"> 
... 
    <div ng-include="sidebarbar.url"></div> 
</div> 

main.js

angular.module('myApp') 
.controller('MainCtrl', ['$scope', 'DataProvider', 'SidebarService', function ($scope, DataProvider, SidebarService) { 
//Initialize 
$scope.data= DataProvider; 
... 
在我的控制器內的index.html

我已經完全進入我的數據範圍,現在我需要裏面顯示該數據的部分側邊欄視圖,SiderbarServices打開側邊欄,設置所有可用的選定ID

details.html(這是由ng-include打開的那個)

<div ng-controller="DetailsCtrl"> 
    <script type="text/javascript"> 
    console.log('test'); //is displayed 
    console.log(data); //not defined 
    console.log($parent); //not defined 
    console.log(testScope); //not defined 
    </script> 
</div> 

details.js(控制器)

angular.module('myApp').controller('DetailsCtrl', ['$scope', function ($scope) { 
    $scope.data= $scope.$parent.data; 
    $scope.testScope = 'testing if available'; 

    console.log($scope); //is displayed 
    console.log($scope.data); //is displayed 
}]); 

如何從內部獲得訪問數據的NG-包括哪些內容? (因爲我已經路由我不能使用視圖)

回答

1

使用此代碼爲details.html:

<div ng-controller="DetailsCtrl"> 
    <!-- <script type="text/javascript"> 
    console.log('test'); //is displayed 
    console.log(data); //not defined 
    console.log($parent); //not defined 
    console.log(testScope); //not defined 
    </script> --> 
    <div>{{data}}</div> 
</div> 

,並替換此代碼在主HTML:

<div ng-include="'details.html'"></div> 

看到plunker這是工作

你做了這個錯誤:它應該是ng-include="'details.html'"ng-include="details.html"

<script>標記在ng-controller之內不起作用。

+0

我在我的代碼嘗試,仍然無法正常工作,ng-include從一個對象改變。此部分工作頁面打開並顯示靜態內容。 我現在通過使用'$ parent.data.key'來獲得它的工作 感謝您的幫助 – DouglasDC3 2014-11-08 14:00:30

相關問題