2017-01-19 5 views
1

AngularJS開発者ガイドでは、コンソールに$ scopeと入力してスコープを調べることができます。

To examine the scope in the debugger:

1.Right click on the element of interest in your browser and select 'inspect element'. You should see the browser debugger with the element you clicked on highlighted.

2.The debugger allows you to access the currently selected element in the console as $0 variable.

3.To retrieve the associated scope in console execute: angular.element($0).scope() or just type $scope

しかし、私は、コンソール上で$スコープを入力してよ、それはここで

Uncaught ReferenceError: $scope is not defined at :1:1

は参照用linkであると言います。

app.jsはので、ここで同じエラーが来てされているCodePenあるこの

var app=angular.module("app",[]); 
app.controller("ctrl",['$scope','demoservice',function($scope,demoservice){ 
    console.log(demoservice); 
    $scope.ser=demoservice; 
}]); 

app.service("demoservice",[function(){ 
    this.name="Himanshu"; 
}]); 

誰かがコードを求めているように見えます。

+0

downvoteにはあまり公平ではありません。これは文字通り文章で – Phil

+0

と書かれていますが、実行中で$スコープがメモリ内にあるときにブレークポイントを調べると、$ scopeがラップされているので、$ scopeにアクセスできるコントローラまたは関数の中にブレークポイントがありますコンソール内で共通変数としてグローバルではない内部コントローラ –

+0

彼らが何をしようとしているかを示していない限り、それは公正です。おそらく、彼らはちょうど 'console.log($ scope);'($ scopeは__1:1__で定義されていません)という1行のjsファイルを作成しましたか?ユーザーが自分のコードを表示すると、私の投票を元に戻すかもしれません。 –

答えて

1

$ scopeはコントローラ内部の参照変数です。したがって、consoleに$ scopeを書くことは、グローバル変数ではなくスコープに対して非公開でアクセスを提供します。あなたは、特定の実行スコープでそれにアクセスする必要が$スコープ変数にアクセスする必要があるのであれば$スコープがあるとして、ブレークポイントは、今ではここで、実行内容の真ん中に保管されている次の例

enter image description here

を考えますメモリ内に我々はそう$の範囲を検査するためにあなたがいないだけで$の範囲に、おそらく実行の途中であることを持っていますがない限り、その、これは任意のJSコード変数に適用されるこの

enter image description here

のようにコンソールで使用することができますウィンドウコンソールでグローバルにアクセスすることはできません。

それ以外の

あなたも

0

は、あなたがの範囲を取得するHTMLから要素を選択し、コンソールタブにangular.element($0).scope();これに文を実行Chromeにアドオンangular batarangを使用することができ、デバッグがより親しみやすい角度JSを使用するには、その要素。

または

イン・スクリーン・クロム・プラグインをインストールできます。コンソールの$s を使用して要素の有効範囲を取得します。

+1

angle.element($ 0).scope();私が知っている事。しかし、開発者ガイドには、$ scopeも使用できることが記載されています。それはなぜ私の疑問です。 – Naveen

+0

@naveen for accessign $ scope実行スコープにする必要があります。私の答えを参照してください。角度の使用のためのデバッグをよりよくしてください。 –

+0

デバッグモードでは、そのデバッグポイントのクロージャで使用できるすべての変数にアクセスできますコンソールで 実行中の関数に変数$ scope、variable1、variable2があるとします。これらの値はすべてコンソール上で(デバッグモードで)利用可能になります。 –

関連する問題