AngularJs路由.cshtml文件在MVC6中

时间:2015-10-12 11:08:51

标签: angularjs angular-ui-router asp.net-mvc-routing asp.net-core asp.net-core-mvc

我想通过MVC6 .cshtml视图获得AngularJs路由的帮助 我创建了普通的_layout,包含了应用程序模式。 我使用ReanderBody函数将Index.csthml读入_layout。 现在我试图添加' div' ng-view使用index.csthml中的angularjs渲染所有其他.csthml视图,但是我的代码没有用。

我使用的AngularJs脚本如下:

angular.module('myApp', [])
  .controller("MyController", function ($scope) {
      $scope.message = "My Message Is Super Awesome";
  });

angular.config(['$routeProvider',
  function ($routeProvider) {
      $routeProvider.
        when('/route1', {
            templateUrl: 'Home/BusinessLookup',
            controller: 'BusinessLookupController'
        }).
        otherwise({
            redirectTo: '/'
        });
  }]);

angular.controller('BusinessLookupController', function ($scope) {

    $scope.message = 'This is Add new order screen';

});

Index.csthml文件如下:

<div>
<a href="Home#/route1">Test</a>
<div ng-app="myApp" ng-controller="MyController">
    {{message}} <!--Here angular does not work-->

    <div ng-view=""></div>

</div>

MVC路由设置:

            app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}"
                );
        }

1 个答案:

答案 0 :(得分:1)

您需要为应用创建角度模块的实例:

var app = angular.module('myApp', []);

然后像这样使用它:

app.controller(...

app.config(...

希望这有帮助。