2016-04-18 9 views
3

POSシステムが提供するショッピングカート用の缶詰ソリューションを編集するだけで、バックグラウンドを提供できます。 「削除」ボタンはなく、「0」と入力してカートからアイテムを削除する必要があります。削除ボタンが必要ですが、これは優先リストにはありません。Chromeデベロッパーツールで特定のjavascript変数の値を検索

スパゲッティを使いこなそうとすると(DevExpressを利用するので、ジャンプが多い)、カートを更新するためにテキストボックスにqty値を送信する場所が見つからないようです。基本的に、私は '15'(または何か)を数量更新ボックスに入れ、その変数がどこにキャプチャされているかを調べるので、代わりにその関数 '0'を送信するだけで削除ボタンを作成できます。

TL; DR変数を特定の値に設定する方法はありますか?たとえば、変数が '15'に設定されている場合などです。

ありがとうございます。

+0

「条件付きブレークポイント」について学習する必要があります。 https://developer.chrome.com/devtools/docs/javascript-debugging – superui

+0

主な問題は、そのテキストボックスの値がさえ使用する場合、私は見つけることができませんです。私は条件付きでチェックする変数を知りません - それを見つけようとします。 – justiceorjustus

+0

特定の値に設定されている変数を検索することは不可能です。 [Chromeソースの範囲]タブのすべての変数を確認します。 – superui

答えて

0

特定の条件が満たされた場合にのみ実行されるブレークポイントを設定できます。 ソースのタブで、ブレークインを挿入するスクリプトがあるファイルを開き、実行時に中断したい行をクリックします。次に、右クリックして編集ブレークポイントを選択します。 qty == 15などの式を入力すると、その条件でブレークされます。

私はこれをあなたが望むものと正確には思わない。値が変わる正確な時点で壊したいと思うようです。

代わりに、親オブジェクトのqtyプロパティを、値が変更されたときに通知する別のプロパティに置き換えることもできます。

// assume that order is an object that contains qty. 
order._qty = order.qty; 
delete order.qty; 
Object.defineProperty(order, 'qty', { 
    get: function() { 
    return this._qty; 
    }, 
    set: function(newValue) { 
    this._qty = newValue; 
    if (this._qty == 15) { 
     console.trace(); 
    } 
    }, 
    enumerable: true, 
    configurable: true 
}); 

setterプロパティを適切な量に数量を設定し、数量、ご希望の金額に等しい場合、そのChromeのconsole.trace()関数を呼び出します:だからコンソールで、あなたはこのような何かを入力したいですどのように設定されているのかを正確に確認することができます。

+0

これがなぜ投票されたのか不思議ですか?私は怒っていないでしょう、ちょうどこの答えが間違っていることを知りたいです。 –

関連する問題