我的代码在使用ng-include
之前是可以正常工作的。现在,每当我访问包含该指令的页面时,页面就会卡住。返回按钮停止工作,你将永远停留在同一个页面的循环中。
我的网站正在使用Asp.NET MVC 5运行。
以下是我的一些代码:
HTML "host"
<div id="place">
<div data-ng-include="'/app/angular/views/place.html'"></div>
</div>
HTML place.html
<div>
<h1>{{place.PlaceName}}</h1>
<ul class="unstyled-list">
<li data-ng-repeat="hint in place.Hints">
<!-- more code -->
</li>
</ul>
</div>
JAVASCRIPT
$scope.place = { };
// 'maps' is a google maps plugin
maps.autoComplete({ success: function(result) {
// gets the result of the user search
History.pushState({ name: result.name, id: result.id }, result.name, '/place/' + result.id);
});
History.Adapter.bind(window, 'statechange', function () {
var state = History.getState();
// go to the server and get more info about the location
$mapService.getMetaInfo({id: state.data.id}).then(function (d) {
// get place info
$scope.place = d;
});
});
当我移除ng-include
并使用“原始”html替换时,它能够正常工作。只有在添加ng-include
时才会发生这种“无限循环”的情况。
ng-include
指令,如果你使用得当,就应该提供一个 Plunker 来重现这个问题。请注意保持原文意思并使内容更加通俗易懂,不要添加解释或其他额外的内容。 - Stewie