“无效的模板根”错误

时间:2014-01-31 13:11:51

标签: angularjs playframework-2.0 angularjs-directive

我正在使用AngularJS作为Play 2.0应用程序的前端。我松散地跟随Paul Dijou的blog post来设置HTML5路由。基本上,Play框架为每个未知路由提供index.html文件,并从那里开始AngularJS路由接管。

在我的应用程序中,我已将导航栏移动到指令中。这在我最初加载我的应用程序时工作正常。但是当我在“更深入”导航到我的Angular应用程序后进行刷新时,Angular会为我的`navbar指令抛出Invalid Template Root错误。如下所示,模板只有一个根元素,只需要。

我已经检查过此question,但我使用的是templateUrl属性。

Plunker(内容已删除,但准确无误)

谁能告诉我我做错了什么?

指令:

myDirectives.directive("navbar", function() {
    return {
        restrict : "E",
        replace : true,
        templateUrl : "assets/app/partials/navbar.html"
    };
});

模板navbar.html

<div ng-controller="NavbarCtrl">
    <nav class="navbar navbar-fixed-top">
        ... (There is more content here but the problem occurs even if this content is removed)
    </nav>
</div>

1 个答案:

答案 0 :(得分:2)

尝试使用绝对模板替换您的相对模板网址:

// Note the leading '/'.
// You could also try a full URL, although that makes development hard.
templateUrl : "/assets/app/partials/navbar.html"