2017-08-30 14 views
7

私のすべてのプロパティ値を参照するには、それらを表示するために、それらをクリックする必要があります。これをどうすれば解決できますか?ChromeデベロッパーツールInvokeプロパティゲッター

enter image description here

私が表示しようとしているオブジェクトは、このQuery Objectです。私が見たいと思っているほとんどのArcgisオブジェクトでこれを行うようです。

答えて

3

問題は、ゲッターを呼び出すと副作用が発生する可能性があるということです。

class Dog { 
    get paws() { 
    console.log('paws!'); //side effect 
    this.paws++; // side effect 
    if(this.paws > 4) { 
    throw Error('oh no'); // side effect 
    } 

    return this.paws; 
    } 
} 

すべてのゲッターは、アプリケーションの状態を変更したり、デバッグしようとしている間に破損する可能性があります。 DevToolsは、これらのゲッターを手動で呼び出すように依頼しています。 getterが静的な値を返すとしても、DevToolsはそれを知る方法がありません。

あなたが本当にすべてのゲッターを呼び出し、値の概要を持っているしたい場合は、自分でヘルパーを作成することができます。

class Dog { 
get _debug() { 
    return { 
    paws: this.paws, 
    //... 
    }; 
} 
} 

これはあなたのためのすべての他のゲッターを起動する新しいゲッターを追加し、 (nクリックの代わりに)1回のクリックで値を指定します。

+0

でも、私は、これらのオブジェクトにゲッターを追加することはできませんよ。私は自分自身で作成したクラス/オブジェクトではありません。 – ddschmitz

0

あなたはすべてのgetterを呼び出しますJSONの文字列化によってそれを入れてみてくださいすることができます

console.log(JSON.parse(JSON.stringify(myObj)));