我在那裏的位置是通過基於改變用戶操作的幾個部分模板NG點擊:AngularJS ngInclude動態地改變其位置
<div ng-include="contentUrl"></div>
<button ng-click="contentUrl = '../partials/testScriptForm.html'">Add Test Script</button>
這個偉大的工程,除非我上面的按鈕是部分自身的內部,所以如果testScriptForm.html有一個按鈕:
<button ng-click="contentUrl = '../partials/testScriptCase.html'">Add Test Case</button>
然後沒有任何反應。
這似乎是由於ng-include獲得一個新的(繼承但不共享?)作用域。
我無法想象的是如何讓包含的模板(部分)來改變自己的位置。
我嘗試了一個函數來改變$ scope。$ parent.contentUrl,它似乎改變了但並沒有「傳播」這些改變。
在CoffeeScript的:
$scope.changeParentLocation = (location) ->
$scope.$parent.contentUrl = location
也試過$範圍$適用()和$範圍$父$適用()在那裏得到的錯誤:。
Error: [$rootScope:inprog] http://errors.angularjs.org/1.2.0rc1/ $rootScope/inprog?p0=%24apply
也許我只是誤用包括...
嘗試使用對象' 「content.Url = 'someFile.html'」',而不僅僅是' 「的contentURL = 'someFile.html'」' – AlwaysALearner
謝謝!我試圖找出爲什麼ng-click無法更改包含的模板,並且從來沒有猜到它是由於新的範圍.. – Sonata