ractive-1.0.0-build9 解析器错误,在属性内进行插值

ractive-1.0.0-build9 parser error with interpolation within attribute

我正在升级到版本 1.0.0 build9。 (代码通过了版本 0.7.3 的所有测试。)

在模板中我有一个元素:

  <div on-click='complaint_{{id}}_edit_cancel()'/>

该属性中的小胡子插值导致解析器错误。我意识到可能有其他方法可以将这个变量传递给事件处理程序,但是应该如何处理这种插值才不会触发解析器错误?

不确定这是否得到官方支持,或者这是否是属性解析的副作用(这会使它成为一个错误)。据我所知,Ractive 只支持字符串或 JS 表达式作为 on-* directive 的值。此外,每个 id 的函数是一个奇怪的设置。

无论如何,表达式对上下文中的数据具有完整的、无限制的访问权限。您可以将 i 作为 a method call or a proxy event.

的参数传递
// passes id as argument to a method
<div on-click="complaint_edit_cancel(id)"/>

// passes id as argument to an event, handled by ractive.on
<div on-click="['complaint_edit_cancel', id]"/>