2017-09-30 14 views
1

更新:これはうんざりの問題で、gulpを再起動すると問題が解決しました。

私はAngularを使用しており、カスタムディレクティブnavbarを作成しようとしています。しかし、私は次のエラーを取得しています:

Error: [$compile:tplrt] Template for directive 'navbar' must have exactly one root element. 

マイテンプレートファイルのみが1つのルート要素とファイルのパスを持っているが正しいですが、私は間違っている可能性が他に何を把握することはできませんか?おかげ

index.htmlを

<!DOCTYPE html> 
<html ng-app="bemoApp"> 
    <head> 
    <base href="/"> 
    <meta charset="utf-8"> 
    <title>Bemo</title> 
    <!-- inject:js --> 
    <!-- endinject --> 
    <!-- inject:css --> 
    <!-- endinject --> 
    </head> 
    <body> 
    <navbar></navbar> 
    <section ui-view></section> 
    </body> 
</html> 

JS /ビュー/ディレクティブ/ navbar.html

<nav> 
    <ul> 
    <li><a ui-sref="register">Register</a></li> 
    <li><a ui-sref="login">Login</a></li> 
    </ul> 
</nav> 

JS /ディレクティブ/ navbar.js

angular 
    .module('bemoApp') 
    .directive('navbar', navbar); 

function navbar() { 
    return { 
    restrict: 'E', 
    templateUrl: 'js/views/directives/navbar.html', 
    replace: true 
    }; 
} 

答えて

1

変更してみてください:

function navbar() { 
    return { 
    restrict: 'E', 
    templateUrl: 'js/views/directives/navbar.html', 
    replace: false 
    }; 
} 

はその置き換えるといくつかの問題があるので、それはあなたの問題を解決することがあります。

+0

残念ながら、サイトの読み込みはまったく停止します。 – Josh

+0

ご協力ありがとうございます、私は今問題を解決しました。これはgulpの問題であり、再起動が必要だったことがわかります。 – Josh

関連する問題