問題タブ [moo]

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 に答える
236 参照

perl - Perl クラス内の属性の変更を監視する

class 内の変数の変更にウォッチャーをどのように設定するのか、コード例を提供できますか? さまざまな機能 ( Scalar::WatcherMoo のトリガー属性) と OOP フレームワーク (Moo、Mojo::Base)を使用していくつかの方法で実行しようとしましたが、すべて失敗しました。

以下は、私のタスクをよりよく理解するための失敗したコードです。この例では、attr1 が変更されるたびに attr2 を更新する必要があります。

Mojo::Base と Scalar::Watcher の使用:

Moo とトリガーの使用:

どんな提案でも大歓迎です。

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

perl - Perl with Moo: メソッドのスーパークラスの実装を呼び出す方法は?

Xサブクラスを持つクラスがありYます。 いくつかの追加の動作でオーバーライドしたいXメソッド、失敗した場合に呼び出すステートメントがあります。Python では、これは次のように実行されます。calculate()YifX.calculate()

Mooモジュールを使用してPerlでこれを行うにはどうすればよいですか?

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

perl - 役割とコードの読みやすさ

ロールの使用の改善 (Moo::Role または Role::Tiny など)

mixinクラスから関数を明示的にインポートするだけではありません

多数あり、柔軟性が向上し、簿記が少なくなり (特に、インポートされるメソッドが多数ある場合)、既存のメソッドを上書きしないことが含まれます。

しかし、大きな欠点は、コードを読んでいるときに の言及に出くわしsome_roles_method()、関数を読みたい場合、どこに行けばよいかすぐにはわからないことです。わかるのは、このファイルで定義されていないということだけです。

それを処理するための良い戦略はありますか?気になるのは私だけですか?

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

perl - オブジェクトの構築中にトリガーを実行しない方法

私はこのコードを持っています:

戻り値:

これは、Moo の Triggers のデフォルトの文書化された動作です。

属性がコンストラクターを介して設定されている場合、トリガーの実行を無効にするにはどうすればよいですか?

もちろん、私はこのようにすることができます:

そして得る:

それでうまくいきますが...それは間違っていると感じます;)。