1

我正在使用AngularJs. Asp.Net mvc 4我想使用模板$routeProvider代替templateUrl

我想用这个

$routeProvider.when('/url', { template: '/view/page.html',controller: 'myCtrl' })

而不是这个

$routeProvider.when('/url', { templateUrl: '/view/page',controller: 'myCtrl' })

每次我需要实现一个页面时,我都不想在控制器中创建方法(只包含 return PartialView())。可能吗?

谢谢。

4

1 回答 1

4

如果我正确理解了您的问题,那么您正在尝试加载 html 模板而无需使用控制器。

为此,只需在 Web 项目中创建一个名为 Templates 的新文件夹,然后在 RouteConfig.cs 中添加一行以忽略此文件夹,如下所示:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("Templates/{filename}.html");
    ...
}

然后在 Angular 中,您可以使用模板 url 并获取您的文件:

$routeProvider.when('/url', { templateUrl: '/templates/page.html',controller: 'myCtrl' })

Angular 将能够使用您的模板,并且您不需要控制器。

于 2015-01-21T19:15:52.390 回答