如何将函数参数从Aurelia视图传递给控制器​​?

时间:2017-07-13 07:08:37

标签: javascript aurelia

我正在使用Aurelia创建一个Web应用程序。 (http://aurelia.io/)。 我需要将函数参数从HTML视图传递给控制器​​。这是我的HTML代码。

<table class="table table-bordered">
    <thead>
    <tr>
      <th>Full Name</th>
      <th>Options</th>
    </tr>
    </thead>
    <tbody>
    <tr repeat.for="user of users">
      <td>
        ${user.fullname}
        <div id="${user.oid}" class="collapse">
          Lorem ipsum dolor sit amet, consectetur adipisicing elit.
        </div>
      </td>
      <td>
        <a href="#${user.oid}" click.delegate="select($user)" data-toggle="collapse"
           class="btn btn-primary btn-xs">View</a>
      </td>
    </tr>
    </tbody>
  </table>

在此代码中,您可以使用参数&#39; $ user&#39;来查看此功能。

  

click.delegate =&#34;选择($用户)&#34;

我需要像在控制器中那样从控制器访问此用户对象。但是它没有工作,并且给我一个未定义的错误。

select(user) {
 console.log(user);
}

当我打印用户对象时,它是未定义的。所以你能告诉我如何解决这个问题吗?如果我无法传递整个用户对象,请告诉我一种传递单个值的方法,例如&#39; user.fullname&#39;。那也没关系。

谢谢:)

1 个答案:

答案 0 :(得分:4)

执行以下更改:

click.delegate="select(user)"