ngView的新功能,我寫了一些與關於ngView的示例代碼有點不同的代碼。通常,操作ngView的URL不在其中,而在我的代碼中,鏈接在ngView模板中。問題是當我點擊下面的ShowOrder鏈接時,我得到一個TypeError,函數$ scope.show()沒有被定義。我點擊鏈接之前和之後都打印了$ scope對象。我的嫌疑人得到確認。在點擊$ scope之前定義了Show()函數之後,隨後$ scope變成裸體,就像剛剛生成的角度一樣,沒有任何自定義屬性。
請幫我找出我做錯了什麼地方,或許有點在ngView如何加載,在範圍內銷燬。謝謝。
這裏是主要的html代碼:
<body ng-app="sampleApp" ng-controller="rootCtrl">
<div ng-view></div>
</body>
App.js:
var sampleApp = angular.module('sampleApp', ['ngRoute']);
sampleApp.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/ShowOrder', {
templateUrl: 'templates/show_order.html',
controller: 'ShowOrderController'
});
}]);
sampleApp.controller('ShowOrderController', function($scope) {
$scope.show = function {console.log("here")}
});
模板代碼:
<h2>Show Orders</h2>
<a href="#ShowOrder"> Show Order </a>
{{show()}}
首先它應該是'angular.module('sampleApp',['ngRoute'])''。 – dfsq 2014-12-06 09:38:38
在我的真實代碼中ngRoute被添加爲依賴關係 – 2014-12-06 10:57:34
因此,如果我正確地理解了您的意思......您手動轉到/ ShowOrder路由,那麼您單擊該鏈接並且希望再次加載相同的視圖?如果你只想觸發show(),你爲什麼不用ng-click來觸發它? – Lihini 2014-12-06 15:50:44