私はResharperの6およびASP.NETのWebメソッドを使用して、私のJavaScriptファイルに刺激性の警告を持っている:ReSharperの、Javascriptを:「暗黙的に宣言されたグローバル変数 『X』の使用」
"Use of implicitly declared global variable 'X'"
理由がありますWebメソッドはJavascriptで次のように作成されます:
new X.example().webMethod(arg1, arg2, successCallback, failureCallback);
そしてX ...は暗黙的に定義されています。私は明示的にこれを定義する解決策があるのだろうか?これは、いくつかの自動生成されたJSファイルで定義されています。これは、ASP.NET Webメソッドフレームワークによって作成されます。
私の質問は、正当に間違った状況のためにそれを取り除かずにこの状況のエラーを取り除くにはどうすればよいですか?
ありがとうございます!
良い質問です。それは、それ自身の行が何も宣言していないので、奇妙な警告のようです。 Xが定義されていないと、実行時にエラーが発生します。 Xが他の場所で宣言されている場合は、警告を他の場所で取得する必要があります。 – nnnnnn
R#JSのエンジンです。「ねえ、私はXを認識しません - 本当にここにいるはずですか?あなたが "XY"とタイプしたのに実際には "X"を意味し、R#があなたのベーコンを保存する場合、それは多くの意味があります。問題は、R#に "はい、これは本当にここにいるはずです"と伝える方法は見当たらないということです。 – rythos42
'X'を' window.X'に変更しても文句はありますか?別のアイデア:C#では、 '// resharper disable whatever'と' // resharper enable whatever'(私は正確に覚えていません)に問題行をラップすることができます。あるいは、グローバルスコープで変数を明示的に定義することもできます: 'var X = window.X || {}; '。 – sethobrien