Angularjs + MVC - 无法找到TemplateUrl

时间:2017-01-07 08:58:59

标签: asp.net angularjs asp.net-mvc-4

您一直在关注Asp.net Core的教程。但我只对角度部分感兴趣,我不使用Asp.net核心。 通过使用此方法,我可以轻松地将任何部分html包含到我的mvc / asp / angular应用程序中:

主要模块

(function(){
    "use strict";
    angular.module("app-test", ["simpleControls"]);
})();

指令

(function () {

    "use strict";

    angular.module("simpleControls", [])
        .directive("waitCursor", waitCursor);

    function waitCursor() {
        return {      
            templateUrl: "/Views/Helper/WaitCursor.html"
        };
    }
})();

部分HTML - 位于Views / Helper /

<div class="text-center">
    <i class="fa fa-spinner fa-spin"></i> Loading...
</div>

主要HTML

<wait-cursor ng-show="true"></wait-cursor>

错误 似乎无法找到所寻找的东西 Cannon find the templateUrl

我试过了: templateUrl:“〜/ Views / Helper / WaitCursor.html”

templateUrl:“Views / Helper / WaitCursor.html”

templateUrl:“WaitCursor.html” - &gt;与主根文件夹中的文件

为什么它在ASP Core中工作,正如我在教程中看到的那样,而不是正常的asp.net mvc 4(我正在使用的)以及如何解决这个问题。

1 个答案:

答案 0 :(得分:3)

~/Views文件夹中的文件受到保护,无法直接提供给客户端。它们的目的是仅在服务器上使用和呈现,而不是作为静态文件返回给客户端。

如果你想使用有角度的HTML模板,那么把它们放在一些~/public/templates文件夹中(或者你喜欢但在〜/ Views之外)可以从客户端浏览器中调用。