初期化メソッドとレンダリング メソッドの両方でいくつかのコードを実行する必要がありますが、私が理解しているように、Chaplin を使用している場合はそれらを直接変更することはできません。独自の初期化メソッドを定義すると、ルートが機能しなくなります。
afterInitialize() も試しましたが、オーバーライドすることを意図していないようです: https://github.com/chaplinjs/chaplin/issues/168#issuecomment-8015915
初期化メソッドとレンダリング メソッドの両方でいくつかのコードを実行する必要がありますが、私が理解しているように、Chaplin を使用している場合はそれらを直接変更することはできません。独自の初期化メソッドを定義すると、ルートが機能しなくなります。
afterInitialize() も試しましたが、オーバーライドすることを意図していないようです: https://github.com/chaplinjs/chaplin/issues/168#issuecomment-8015915
[...]しかし、私が理解しているように、チャップリンを使用している場合、それらを直接変更することはできません
拡張プロトタイプに適切に委任する限り、それらを直接変更できます。
質問にタグを付けていないので、javascript
以下coffeescript
はそれぞれの 2 つの解決策です。まずはjavascriptです。拡張関数を明示的に呼び出す必要があることに注意してください。
var View = Chaplin.View.extend({
initialize: function(options) {
// Add code here ..
// The below invokes the initialize function of the
// base Chaplin.View class in the context of
// this class
Chaplin.View.prototype.initialize.call(this, arguments);
// .. or here
}
});
次は ですcoffeescript
。これにより、この種の作業が大幅に容易になります。
class View extends Chaplin.View
initialize: ->
// Add code here ..
// The below auto-magically invokes the
// initialize method of the base class
super
// .. or here