2016-05-13 8 views
1

私のコードは <textarea>または<ul>のdivをscope.current.typeの後にDBから生成し、その中にscope.current.contentを設定します。私のカスタムディレクティブが動作していません

しかし、それは動作しません、私のページに単に<contentDirective></contentDirective>

app.directive("contentDirective", function($compile) { 
    return { 
     restrict: 'E', 
     replace: true, 
     template: "<div class='new__content__input new__content__input-text'></div>", 
     link: function(scope, element, attrs) { 
      if (scope.current.type === 'Text') { 
       var DOM = "<textarea>" + scope.current.content + "</textarea>"; 
       element.append(node); 
      } else if (scope.current.type === 'Quote') { 
       var DOM = "<textarea>" + scope.current.content + "</textarea>"; 
       element.append(node); 

      } else if (scope.current.type === 'List') { 

       var ul = "<ul>"; 
       for (var i = 0; i < scope.current.content.length; i++) { 
        ul += "<li>" + scope.current.content[i] + "</li>"; 
       } 
       ul += "</ul>"; 
       element.append(ul); 
      } 
     } 
    }; 
}); 

そして、私のHTMLを示しています

<li ng-repeat="doc in who_u_r" ng-init=" current = doc " class="new__content__input__single clearfix"> 
    <contentDirective></contentDirective> 
<li> 

は、これまで

答えて

1

変更を支援するためにありがとうございました角度変換はキャメルケースをスネークケーシングに変換します。この場合、名前はダッシュを使用して記述する必要があり、各ダッシュはディレクティブ定義の大文字を表します。

<content-directive></content-directive> 
+0

ありがとうございます!あなたはそれを説明する時間がありますか? –

+0

Angularによって作成されたディレクティブは、名前にハイフンを使用できないため、Javascriptではラクラクになります。 HTMLでは、読みやすさを保つために、スペースで区切られています。だから、Javascriptの 'myCustomDirective'は' ' – Jhecht

+0

になります。私はまだ仕事がたくさんあるようです。 –

関連する問題