在RactiveJS上更新数组

时间:2015-03-23 06:06:12

标签: javascript jquery arrays json ractivejs

我正在使用RactiveJS,在使用数组时遇到问题,这是我的初始配置:

JSFIDDLE:http://jsfiddle.net/18fccpnj/

var ractive = new Ractive({
  el: 'container',
  template: '#template',

  // Here, we're passing in some initial data
data: { students: [
    {name: "Miguel Crespo", note: 5}
]}

});

我的html上有一个触发事件的按钮

<button on-click="charge">Cargar otro</button>

这是事件句柄:

ractive.on("charge", function(){
ractive.set("students", [
    {name: "Miguel Crespo", note: 5}, 
    {name: "Pedro Perez", note: 3}
]);
});

此调用永远不会更新视图,我不知道为什么,因为在官方页面中这样的示例有效!

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

对块[[#each students:num]]使用静态分隔符声明在初始渲染后不会更新它。将它们更改为{{#each students:num}},它可以正常工作(请参阅http://jsfiddle.net/18fccpnj/4/)。

也无需重置整个阵列上的数据,只需推送新成员即可:

ractive.push("students", {name: "Pedro Perez", note: 3});