問題タブ [refinements]

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.

0 投票する
1 に答える
79 参照

ruby - Sinatra ビューの絞り込みで定義されたメソッドを使用することは可能ですか?

洗練されたメソッドを追加する宝石で定義されたクラスがあります(Ruby 2.3.0)。このクラスは、いくつかの Sinatra ビュー (haml) で表示されます。

これらの余分なメソッドをヘルパーで参照する場合、問題はありません。しかし、ビューでは、未定義のメソッド エラーが発生します。

私はトリックを逃していますか、それともusing ...ステートメントが私が到達できない場所に行く必要があるということですか?

(回避策: オブジェクトのメソッドを返すヘルパー メソッドを定義できます。しかし、それを行いたい場合は、改良を使用しなかったでしょう...)

0 投票する
1 に答える
52 参照

ruby - Ruby Enumerator「Single」メソッド

Singleメソッドに似たものを実際に利用する必要があります。

シーケンスの唯一の要素を返し、シーケンスに要素が 1 つだけない場合は例外をスローします。

明らかに、便宜上拡張/改良を追加できます。

しかし、似たようなものはすでに存在しますか?多分ActiveSupportまたは他のライブラリにありますか?

0 投票する
2 に答える
247 参照

ruby - リファインメントを使用して、カーネルなどのコア モジュールにパッチを適用する

Facets API を調べて、いくつかのメソッドを選択して、改良と互換性のあるパッチ ライブラリに含めます。

カーネルにパッチを当てようとして失敗しました。これはモジュールですが、私がパッチを当てた他のものはクラス (文字列、配列など) でした。


コアクラスに対する私の標準的なアプローチを使用して洗練できないことの証明は次のとおりです。


また、カーネル モジュールをクラスにラップし、カーネルへのグローバル参照をそのクラスに変更しようとしました。


この場合、Kernel を Object に置き換えることで、同じ機能を正常に取得できました。

しかし、Enumerable などの他のコア モジュールでこの同等性を得ることができるかどうかはわかりません。

0 投票する
1 に答える
529 参照

ruby - モジュール内のクラスからメソッドを絞り込む方法

モジュール内のクラスにあるメソッドを改良したいのですが、クラスを改良しようとしても、改良されたコードを実行することができません。

出力: Original name: Forest Original name: Forest