2016-05-26 6 views
0

JavaScriptコード内にHTMLコードを作成していますが、問題はAngularjsコードであることを認識できないため、どうすればいいですか?javascript内でHTMLを作成するAngularjs

私の問題は、ビューの上にng-appの宣言があっても{{}}の変数がAngularjsコードとして認識されず、ビューの上部にはng-controllerがあります。 助けてください?

+3

私ができます助けてもAngularの有用性が失われていると思います。 – dan08

+0

@ dan08私の上司は知りません – Jean

+0

あなたはng-appとng-controllerをhtmlに持っています。あなたは、jsファイルにアプリケーションとコントローラを定義しましたか? –

答えて

1

あなたのアプリにng-sanitizeを注入して、ng-bind-htmlディレクティブをコントローラから生成している要素のhtmlに追加する必要があります。言われて、あなたはそれが間違ってやっていること

angular.module('myApp',[ngSanitize]) 

だからここでアプリのモジュールを作成するには、のような何かをします。 :)

テーブルをHTMLで定義し、ng-repeatを使用して行を生成します。私はそこに何か他のものがあると思っていますが、イベントが発生した後にテーブルを動的に生成しようとしているようです。あなたのhtmlにテーブルを置き、ng-ifを使ってイベントが発生するまで隠すだけです。

またはコンポーネント内で実行します。

あなたのコンポーネントhtmlは、tableauComponent.htmlに格納されているファクトリコードで生成しているように、基本的にあなたのテーブルレイアウトになります。あなたはこの赤ちゃんは、あなたのHTMLで表示したいwhereever次に、あなただけの使用

angular.module("myApp").component("tableauComponent", { 
    templateUrl: 'tableauComponent.html', 
    controller: tableauController, 
    controllerAs: 'tableau' 
}) 

function tableauController() { 
    var ctrl = this; 
    this.data = service call to get your data here. 
} 

<table> 
    <tr> 
    <th>Matricule</th> 
    <th>Sexe</th> 
    <th>Direction</th> 
    <th>Type_contrat</th> 
    </tr> 
    <tr ng-repeat="x in tableau.data"> 
     <td>{{ x.MATRICULE }}</td> 
     <td>{{ x.SEXE }}</td> 
     <td>{{ x.DIRECTION }}</td> 
     <td>{{ x.TYPE_CONTRAT }}</td> 
    </tr> 
</table> 

コンポーネントは、このようなもので、あなたのアプリに登録さになるだろう

<tableau-component></tableau-component> 
+0

私は知っています、正しい方法は上司が私に指示する前に行ったことです彼はコードを再利用できるようにしたいので、同じですが工場で作成してください。 – Jean

+1

あなたの上司を撃ってください!テーブルを再利用できるようにするには、ファクトリではなくコンポーネントまたはディレクティブで作成します。 –

+0

コントローラではなく工場でHTMLを定義しているので、機能しません – Jean

関連する問題