検索

ホームページ  >  に質問  >  本文

angular.js - angular で $sope をよりよく理解するにはどうすればよいですか?

最近 angular を勉強しています。これは新しいプロジェクトであり、vue よりもはるかに曖昧に感じられるためです。
コードを投稿して指導を求めてください

リーリー
天蓬老师天蓬老师2762日前730

全員に返信(4)返信します

  • 漂亮男人

    漂亮男人2017-06-07 09:25:44

    これはビューとコントローラーの間のリンクであると考えてください。

    返事
    0
  • 黄舟

    黄舟2017-06-07 09:25:44

    vue については理解できるので、不適切な比較をさせてください。vue には data() 関数とメソッド オブジェクトがあり、それらが返すプロパティとメソッドは、angular でも同様です。スコープ内 オブジェクトのメソッドとプロパティはテンプレートで直接使用できます。

    返事
    0
  • 巴扎黑

    巴扎黑2017-06-07 09:25:44

    Angularシリーズ学習メモ(1) - Angularのモジュール化について話しましょう

    返事
    0
  • 天蓬老师

    天蓬老师2017-06-07 09:25:44

    簡単に言えば、私は上記の内容に同意します。これはビューとコントローラーの間のリンクとして理解できます。

    実際には、データ駆動型フレームワークの場合、ページ (ビュー) の変更はデータの変更に基づいて行われます。この $scope は通常、ページ データを保存するために使用されます。もちろん、この機能はページ上に表示されるデータを保存することに限定されず、表示する必要はないが「他のことが起こる」ことを可能にするデータを保存することもできます。

    さらに複雑に言うと、私の理解では、$scope 是一个基于 $rootScope 的实例。scope 这个单词本身就有作用域的意思,Angular 中的 $scope$rootScope に基づくインスタンスです。スコープという言葉自体は範囲を意味します。Angular の

    は JavaScript のスコープの特性、つまり継承の特性も持っています。

    controller 可以通过 $parent 访问父级 controller$scopeたとえば、JavaScript では、子関数は変数名を通じて親関数のスコープにアクセスできますが、親は子にアクセスできません。同様に、Angular では、子の controller$parent を通じて親の controller

    にアクセスできますが、親は子にアクセスできません。

    $rootScope;二是通过 $emit 由事件去控制;三是通过 factory 或者 service 还有 constant親が子にアクセスするには、JavaScript には通常 2 つの解決策があります。1 つはグローバル変数を使用する方法、もう 1 つは独自のスコープ内の特定の値を公開するクロージャーの書き込みを使用する方法です。 Angular でも同様の方法があり、1 つは

    などのパラメータを渡す方法ですが、この方法には依存性注入なども含まれます。

    $scope長い目で見ると、

    [濃い霧]は良いことではありません。 。 。私の個人的な経験では、注意しないとスコープブリードが発生する可能性が高く、子レベルで特定の値を取得するべきではありませんが、継承関係により、子レベルで値が検索されます。レベルを設定してこの値を見つけます。見た目は素晴らしいですが、動作中に問題が発生する可能性が高く、デバッグが難しくなります。

    controllerAs 语法,这样你就不需要在 Angular 1 中用 $scope 了。在 Angular 2 中是肯定不用 $scopeAngular 1 で

    を使用する必要がないように、controllerAs 構文について学ぶことができます。 Angular 2 では、

    は絶対に使用されません。

    ここで言えることは非常に限られています。必ず公式ドキュメントを読むことをお勧めします:

    https://docs.angularjs.org/gu...

    https://github.com /angular/an... .$scope

    カスタムディレクティブを書こうと思ったら、
    を理解しないとうまく書くのは難しいでしょう。

    上記は純粋に個人的な理解です。修正を歓迎します🎜🎜

    返事
    0
  • キャンセル返事