0

新しい Angular JS コーダー、マイナーな問題。

これを定義すると:

<div>
    <div ng-controller="myController" ng-app="myApp">
        <div ui-grid="gridOptions" ui-grid-tree-view ui-grid-grouping class="grid"></div>
    </div>
</div>

その後

<script>
    var app = angular.module("myApp", [...])
    .controller("myController", [...,function(...){ ... }]);
</script>

正常に動作します。コントローラーとグリッドにデータを取り込むことができ、世界は楽しくて幸せな場所です。

今。マークアップを THIS に変更します (ng-app を外側の div に移動します):

<div ng-app="myApp">
    <div ng-controller="myController">
        <div ui-grid="gridOptions" ui-grid-tree-view ui-grid-grouping class="grid"></div>
    </div>
</div>

そして世界は明らかに爆発します。グリッドは表示されなくなりました。そのためのCSSはありますが、データはまったくありません。contentplaceholder で試してみました。コードのそのセクションを含むすべての div で試しましたが、最も単純なこととして、要素を 1 レベル上に移動しても機能しません。

詳細: マスター内の子ページ (Angular のすべての定義は、マスターではなくページ自体にあります)、要素コンテナーのいくつかのレベルは、ng-appが と同じタグにある場合にデータが入力されることを確認できますがng-controller、その上です。

4

1 に答える 1

0

次のプランカーをご覧ください: http://plnkr.co/edit/NRyCjTonKrkcibd9607f?p=preview

あなたのコードをこれと比較してみてください。あなたが言ったのと同じhtmlを使用しています。

<div ng-app="app">
  <div ng-controller="MainCtrl">
    <div id="grid1" ui-grid="{ data: myData }" class="grid"></div>
  </div>
</div>
于 2016-11-04T18:47:35.070 に答える