2

setOptionsBackbone.Stickit.jsのグローバルを設定する方法はありますか?

そうすればvalidate: true、すべてのバインディングで他のカスタム オプションと同様に設定する必要がなくなります。

bindings = { '.someEl': { observe: 'prop1' , setOptions: { validate: true } } , '.someOtherEl': { observe: 'prop2' , setOptions: { validate: true } } , '.yetAnotherEl': { observe: 'prop3' , setOptions: { validate: true } } };

*.addHandler でセレクターを使用することに関する投稿を見たことがあります。

Backbone.Stickit.addHandler({
     selector: '*',
     setOptions: {validate: true}
});

しかし、それは私にはうまくいきませんでした。

欠けている簡単な方法があると確信していますが、今のところ、私のハックは、プロパティ名を解析するメソッドを作成することでした:

function stickTo(propName, options) {
    _.extend({observe: propName}, {setOptions: {validate: true}}, options);
}

...

bindings: {
    '.someEl': stickTo('prop1')
}

stickTo はすべてのデフォルト オプションを設定し、デフォルトを上書きするオプションのパラメータを受け取ります...

4

1 に答える 1

1

ハンドラーは機能しているはずです。入力が変更されるたびに、 Model.set の引数をコンソールに記録するフィドルをセットアップします。

http://jsfiddle.net/px6UP/39/

Backbone.Stickit.addHandler({
    selector: '*',
    setOptions: {validate:true}
});
于 2013-05-01T00:18:48.703 に答える