2014-02-26 78 views
0

我是AngularJS的新手,並且正在學習指令。我使用的教程從egghead.io和我堅持用下面的例子:指令中的模板不會出現

<html> 
<head lang="en"> 
    <script type = "text/javascript" src = "../libs/angular/angular.js" ></script > 
    <script type = "text/javascript" src = "example.js" ></script> 
</head> 
<body> 

    <div ng-app="phoneApp"> 
     <div ng-controller="phoneCtrl"> 
      <phoneDir></phoneDir> 
    </div> 
</div> 
</body> 
</html> 

example.js包含此:

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

app.controller('phoneCtrl',function($scope) { 

}); 

app.directive('phoneDir',function() { 
    return { 
     restrict:"E", 
     template:'<div> Panel </div>' 
    }  
}) 

它,這只是試圖在用一個指令一個很簡單的例子HTML問題是我沒有看到在模板中定義了「面板」的div。有人可以幫忙嗎?

+2

使用''指令是駝峯只是在代碼中,它們在標記 – doodeec

+0

複姓@doodeec:是的,解決了它。如果你可以發佈這個答案,我會關閉它。謝謝! – codewarrior

回答

2

指令只在代碼中使用駝峯名稱,標記使用複姓名字

使用

<phone-dir> 
0

嘗試添加replace:true屬性。我認爲這會解決你的問題。

app.directive('phoneDir',function() { 
return { 
    restrict:"E", 
    replace: true, 
    template:'<div> Panel </div>' 
}  
}) 
+0

這沒有奏效。 – codewarrior

+0

只替換集合,是在標籤內添加模板還是在標記中顯示而不是標籤 – doodeec

+1

doodeec是完全正確的。我完全忽略了這一點。您需要在標記中連字符的名稱,而不是使用駱駝大小寫(僅在HTML中)。 – MDiesel