Я только начал с Rivets.js
, который выглядит многообещающим как простая структура привязки данных.
Я пришел к выводу, что не знаю, как передать "настраиваемые аргументы" в связывание rv-on-click
, поэтому я попытался принять эту идею: https://github.com/mikeric/rivets/pull/34
rivets.binders["on-click-args"] = {
bind: function(el) {
model = this.model;
keypath = this.keypath;
if(model && keypath)
{
var args = keypath.split(' ');
var modelFunction = args.shift();
args.splice(0, 0, model);
var fn = model[modelFunction];
if(typeof(fn) == "function")
{
this.callback = function(e) {
//copy by value
var params = args.slice();
params.splice(0, 0, e);
fn.apply(model, params);
}
$(el).on('click', this.callback);
}
}
},
unbind: function(el) {
$(el).off('click', this.callback);
},
routine: function(el, value) {
}
}
Этот код работает, мой вопрос: правильно ли это?