2016-04-19 8 views
3

私はangularJSを初めて利用しています。今、私は単純な角度のアプリケーションを書こうとしています。しかし、私はng-app指示の役割を疑問に思っています。 ng-appディレクティブの役割は何ですか?

<html ng-app> 

そして、それは htmlタグの代わりに divタグで ng-appを追加することが可能でしょうか?可能であれば、 <html ng-app><div ng-app>の間に相違点がありますか?たとえば、効率は?

+2

https://docs.angularjs.org/api/ng/directive/ngApp質問は役に立たないと思います...キャンセルする必要があります – thegio

+0

[ng-appディレクティブ(htmlとbody)の配置]の可能な複製(http://stackoverflow.com/questions/15790432/placement-of-the-ng-app-directive-html-vs-body) – thegio

答えて

4

ng-appディレクティブは、アプリケーションのルート要素を指定します。通常、ページのルート要素の近くに配置されます。 <body>または<html>タグにあります。ng-appディレクティブは、HTMLドキュメントに1つしか含めることができません。また、AngularJSアプリケーションにさまざまなAngularJSモジュールをロードするためにも使用されます。 AngularJSフレームワークはのみng-appディレクティブは

<div ng-app="" ng-controller="myCtrl"> 
</div> 

OR

<div ng-app="myApp" ng-controller="myCtrl"> 
</div> 

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

ng-app属性は、(角がそのカスタム属性のためのspinal-caseとそれらを実装する、対応するディレクティブのcamelCaseを使用しています)ngAppという名前の角度指令を表しています。このディレクティブは、Angularがアプリケーションのルート要素とみなすhtml要素にフラグを立てます。これにより、アプリケーション開発者は、HTMLページ全体またはその一部だけをAngularアプリケーションとして扱う必要がある場合に、Angularに自由に指示することができます。

したがって、ng-appをdivタグに追加できます。

1

ng-appディレクティブは、アプリケーションをブートストラップするためである

使用法を適用されたDOM要素とその子要素を処理します。 ng-app

要素は、ルート要素である:それはあなたのアプリケーションの他のディレクティブをラップします。 the documentationによると

<div ng-app="myApp"> 
    <div controller="ctrl"></div> <!-- working --> 
</div> 
<div controller="myOtherCtrl"></div> <!-- not working --> 

ディレクティブの使用属性として

<ANY ng-app="angular.Module" [ng-strict-di="boolean"]> ... </ANY>

ですから、012を追加することができますdiv上のまたは任意の他の要素。

関連する問題