問題タブ [scopes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - JavaScript のスコープ
メソッドがほとんどないjavascriptの単純なオブジェクトがあります..そのうちの2つは、window.setTimeout
関数で定期的に呼び出したいです。私の現在のコードは次のようになります。
問題は、スコープがどのように機能しているかを誤解しているようです。タイムアウトから関数を呼び出すと、実際には存在しない別のコンテキストから呼び出されるように見えますか?
scopes - スコープはどのように機能しますか?
スコープとは、関数スコープ、クラス スコープ、ライブラリ、DLL などを意味します。
最後にすべてのコードが一連の命令に (コンパイラによって) 変換される場合、高水準言語の高水準スコープは最下位レベルのコードにどのように影響しますか?
ruby-on-rails - ActiveRecordの関連付けとスコープ
複数のテーブルからデータをプルする方法を理解し、それを理解しようとしています。
events
、、テーブルがoccurrences
あります。venues
これまでのモデル/関連付けは次のとおりです。
models / event.rb:
モデル/venue.rb:
models /occurence.rb:
view / events / index.html.erbに表示したいのは、今日発生しているすべてのイベントの表であり、次のようなことをしたいと思います。
.today
スコープに一致するすべてのイベントを表示します。
スコープをevent
モデルに移動してみましたが無駄になりました。スコープをイベントモデルに移動する必要がありますか?これまでのところ、検索の結果、「スコープを使用してActiveRecordの複数のDateTime範囲内の結果を返す」と「 Rails3.0の複数のスコープ」にたどり着きましたが、実際には何も作成できません。
誰かが私を正しい方向に向けることができますか?イベントモデルに新しい関数を作成する必要がありますか?
ruby-on-rails - activeadmin リソースにスコープが必要
私はactiveadminを使用しており、現在のユーザーに関連するレコードのみを表示するスコープを要求する方法を理解する必要があります.
ユーザーが選択できる他のスコープもありますが、それらのスコープは、いわば「事前にスコープ設定」して、そのユーザーに属するレコードのみをいつでも利用できるようにする必要があります。
これが理にかなっていることを願っています。私はこれらすべてにかなり慣れていないので、どこから始めればよいかわかりません。助けてくれてありがとう。
ruby-on-rails - Rails3スコープは他のモデルから継承されています
あるモデルスコープを別のモデルスコープの一部として使用する方法はありますか?
例
jsf - @ViewScoped 動作を持つ @SessionScoped Bean
セッション スコープ Bean で奇妙な動作が発生しています。次のインポートと注釈を使用して、セッションスコープにしました。
編集:より多くのコード
JSF ページのコード スニペット:
jsf ページのリンクをクリックすると、そのような DetailsBean がインスタンス化されます。コンテンツが異なる別のリンクをクリックすると、同じセッション内にいるため、同じ Bean が使用されます。奇妙なことに、2 つの異なるブラウザー タブを作成したにもかかわらず、ページを更新した後でも異なるコンテンツが表示されます。同じ Bean インスタンスで異なるコンテンツを表示するにはどうすればよいですか? 通常、@ViewScoped Beanだけがこれを達成できると思いましたか? 誤解しないでください、私は彼らに別のコンテンツを表示してもらいたいので、ここで @ViewScoped を使用するのが正しい決定ですが、どうすればこれが可能になるのだろうか...
EDIT2:javax.faces.ViewScopedを使用すると、上記のコードが機能しなくなります(LinkedHashMapのためにjava.io.NotSerializableExceptionが発生します)
java - エンティティをあるjsf-viewから別のjsf-viewに転送するにはどうすればよいですか?
私は次の構造を持っています:
listView.xhtml
ListBean.java
editView.xhtml
EditBean.java
あなたは質問を知っています:選択したエンティティをlistViewからeditViewに転送するにはどうすればよいですか?これは私が思った非常に単純なはずですが、丸一日後、私はそれを機能させることができませんでした。
私は別のことを試し@ManagedProperty
まし<f:param name="" value="">
たが、私は助けてくれませんでした。だから、これがどれほどシンプルで素敵なのか見せてください:)
前もって感謝します!
更新-ソリューション#1
ダニエルのおかげで、エンティティがEntityManagerによって保持されている場合に機能する可能性のある方法は、そのIDでエンティティにアクセスできるようにすることです。したがって、IDをリクエストパラメータとして渡します。どうぞ:
listView.xhtml
EditBean.java
spring - リクエスト スコープ Bean をアプリケーション スコープ Bean に自動配線する
リクエスト スコープの Bean をアプリケーション スコープの Bean にオートワイヤすることは可能ですか。すなわち
私はクラス RequestScopedBean を持っています:
そして、リクエストスコープのBeanが自動配線されているクラスApplicationスコープのBean。
spring-config xml は次のとおりです。
このアプリケーションを実行しようとすると、applicationScopedBean の Bean 作成が次のエラーで失敗します。
java - Java コンパイラ API でプリミティブ データ型に Trees.isAccessible() を使用する方法 / TypeMirror を DeclaredType に変換する方法
Java Compiler API を使用して .java ファイルを分析しようとしています。私の現在の問題は、特定の変数、メソッド、またはクラスがプログラム内の特定のスコープで認識されているかどうかを調べることです (スコープとは、Java コンパイラ API 自体で定義されているスコープを意味します。こちらを参照してください: http:// docs.oracle.com/javase/6/docs/jdk/api/javac/tree/com/sun/source/tree/Scope.html )。
Java コンパイラ API の Trees クラス ( http://docs.oracle.com/javase/6/docs/jdk/api/javac/tree/com/sun/source/util/Trees.html ) には、次のユーティリティ メソッドがあります。それをしてください:isAccessible。このメソッドは、Scope とターゲット ノード、およびその宣言された型を取得し、指定されたスコープでターゲット ノードが既知の場合は true を返します。
残念ながら、この DeclaredType オブジェクトを作成する方法はわかりません (スタックオーバーフローのスパム防止のため、今後はクラス名のみを記述し、ハイパーリンクを投稿することはできません: javax.lang.model.type.DeclaredType)。ターゲット Node にそのタイプ (javax.lang.model.element.Element [asType() メソッド]) を問い合わせることができますが、それは DeclaredType ではなく TypeMirror インスタンスを返します。
現在、次の 2 行のコードを使用しています。
ここで、「referenceCompTree」は現在のプログラムのツリー インスタンス、referenceScope は問題のスコープ、nodeElement は問題のノード、nodeType は問題のノードの DeclaredType である必要があります。
この直接型キャスト アプローチは、クラスのノードである 1 つのケースでうまく機能します (ノードが独自の型を宣言し、その typeMirror が独自の型と同等であるため、これが機能すると思います)。しかし、(ヘッダーに記載されているように) プリミティブ型の変数に対しては確実に機能しません。変数に対して機能するかどうかはわかりません。
誰か知っていますか
- プリミティブ型に Trees の isAccessible-method を使用する方法、またはより具体的には、TypeMirror インスタンスを DeclaredType インスタンスに一般的に変換する方法は? また
- isAccessibleを使用せずに必要な情報を取得する方法(変数、クラス、またはメソッドが特定のスコープで既知の場合)?
付録:
両方の質問についてさらに調査を行ったので、わかったことのいくつかを紹介したいと思います。
- タイプ (javax.lang.model.util.Types) と呼ばれるユーティリティ クラスがあります。型のインスタンスは、標準の Java コンパイラ API クラス (この場合は com.sun.source.util.JavaTask) を使用して取得できます。このオブジェクトには、指定された TypeElement といくつかの TypeMirror の DeclaredType インスタンスを返すメソッド (getDeclaredType) があります。しかし、この方法は、入力引数が少なかったことを示すエラーがスローされるため、私には機能しません。このメソッドには、指定された生のクラスといくつかの型パラメーターの DeclaredType インスタンスを返すという唯一の目的があると思います (たとえば、HashMap の DeclaredType インスタンスを作成するには、このメソッドを HashMap の typeElement と String の 2 つの typeMirrors と共に使用します)。明らかに、これは私が意図していることではありません。
- それぞれの修飾子を検索し、スコープ ツリーを検索して、変数、クラス、またはメソッドが特定のスコープで既知であるかどうかを手動で判断することで、回避策をプログラムしようとしましたが、主な理由が 2 つあります。検索アルゴリズムでJavaスコープ構築のすべての特殊なケースを正しく取得したかどうかはわかりません.2番目に、(一見)既に存在し、Javaコンパイラが常に行うものを再実装しようとするため、これは非常に不必要に思えます。地獄、私の NetBeans でさえ、特定の変数、メソッド、またはクラスが現在のスコープで既知であるかどうかを常に教えてくれます。ですから、何らかの方法があるはずです。
ruby - Ruby スコープ、定数の優先順位: レキシカル スコープまたは継承ツリー
rubykoansチュートリアルのコード スニペットをお見せします。次のコードを検討してください。
実際、質問はコメントにあります(アスタリスクで強調しました(太字にするつもりでしたが))。誰か説明してくれませんか?前もって感謝します!