Ractive.js 从代理事件调用对象方法

Ractive.js Calling object method from proxy event

我想从ractive中调用特定对象的方法。

on-click="mylist.page(5)"

在这种情况下,将在 ractive 对象上设置具有 next 方法的 mylist 对象。

当我使用直接添加到 ractive 对象的 next 方法时有效,但嵌套在更深的内部时无效

Ractive目前只支持在事件处理器中调用一种实例方法:

on-click='setPage(5)'

能够链接调用是 under consideration

现在,您必须通过以下方法路由它:

new Ractive(){
    mylist: {
        page: function(page){
            // do page work
        }
    },
    setPage: function(page) {
        this.mylist.page(page);
    }
}

如果您真正想要的是在数据对象上调用方法,请将原型方法添加到 Ractive:

Ractive.prototype.call = function( obj, method ) {
    var args = [].prototype.slice.call( arguments, 2 );
    obj[method].apply( obj, args );
}

那么你可以使用:

on-click='call( mylist, "page", 5)'