Javascript 使用Marko.js发出值的正确方法

Javascript 使用Marko.js发出值的正确方法,javascript,node.js,marko,Javascript,Node.js,Marko,我希望一个Marko.js组件发出一个事件和一个值,然后我希望包含该事件的组件侦听该事件并访问该值 我有一个简单的按钮组件,如下所示: 类{ doSomething(){ emit('buttonClicked',{someValue:'10'}); } } 点击我给出以下内容并继续您的示例: class { onButtonClicked(foo, bar, eventArg){ console.log('foo:', foo); console.lo

我希望一个Marko.js组件发出一个事件和一个值,然后我希望包含该事件的组件侦听该事件并访问该值

我有一个简单的按钮组件,如下所示:

类{
doSomething(){
emit('buttonClicked',{someValue:'10'});
}
}

点击我给出以下内容并继续您的示例:

class {
    onButtonClicked(foo, bar, eventArg){
        console.log('foo:', foo);
        console.log('bar:', bar);
        console.log('eventArg:', eventArg);
    }
}

$ var foo = 'foo';
$ var bar = 'bar';

<div class="button-manager">
    <my-button on-buttonClicked('onButtonClicked', foo, bar) />
</div>
在事件处理程序的方法名称之后传递的其他参数将在参数的开头传递给事件处理程序方法。见:

旁注:这是为了反映

除非有其他数据要传递给事件处理程序方法(调用
this.emit()
时未提供的数据),否则无需绑定任何其他参数


希望这能回答您的问题。

给出以下内容并继续您的示例:

class {
    onButtonClicked(foo, bar, eventArg){
        console.log('foo:', foo);
        console.log('bar:', bar);
        console.log('eventArg:', eventArg);
    }
}

$ var foo = 'foo';
$ var bar = 'bar';

<div class="button-manager">
    <my-button on-buttonClicked('onButtonClicked', foo, bar) />
</div>
在事件处理程序的方法名称之后传递的其他参数将在参数的开头传递给事件处理程序方法。见:

旁注:这是为了反映

除非有其他数据要传递给事件处理程序方法(调用
this.emit()
时未提供的数据),否则无需绑定任何其他参数

希望这能回答你的问题