【发布时间】:2016-05-10 15:55:18
【问题描述】:
在我的整个应用程序中设置 ngRoute 会产生问题。许多视图中使用的控制器依赖于从 ASP.NET 控制器中的数据库中获取的脚本。这是一个例子:
角度应用
var app = angular.module("app", ["ngRoute"])
.config(["$routeProvider", "$locationProvider", function($routeProvider, $locationProvider) {
$routeProvider
.when("/Template/:id", {
templateUrl: function(arg) { return "/User/Template/Details/" + arg.id },
controller: "FormController"
});
$locationProvider.html5Mode(false).hashPrefix("!");
}]);
Razor 视图 Details.cshtml:
@{
Layout = null;
}
<head>
<script type="text/javascript">
alert('triggered');
angular.module("app").controller("FormController", ["$scope", function ($scope) {
alert("not triggered");
$scope.xyz = 1;
}]);
</script>
</head>
<div id="template-details" class="col-xs-12" ng-controller="FormController" ng-cloak>
<span>{{xyz}}</span>
</div>
它加载视图很好,除了它不启动控制器(使用 ViewBag 代码)。脚本块执行得很好(用第一个 alert() 测试)。
【问题讨论】:
-
检查浏览器控制台是否有任何错误。
-
它说FormController不是一个函数并且未定义
标签: c# asp.net angularjs asp.net-mvc asp.net-mvc-4