ractivejs.push()在IE11中返回object.keys错误

时间:2016-11-22 21:30:34

标签: javascript internet-explorer-11 ractivejs

我有一个我似乎无法弄清楚的问题。我正在使用ractiveJS建立一个DNS管理系统。

我试图在现有记录的末尾添加新记录。我使用ractive.get('A')来检索当前记录。我然后建立一个新对象

var thisRecord = {};
thisRecord.hostname = "hostname";
thisRecord.ip = "123.123.123.123";

然后我使用records.push(thisRecord);将其添加到ractiveJS。在Chrome,Firefox和Safari中,这种方法很好,在IE11中,我收到了以下错误。

IE11 Ractive JS Error

请注意。即使它在文件auth.js中,该文件只是一个压缩文件,其中包含一些其他文件。受影响的行似乎在RactiveJS中,这是行

return n.isRoot?o=[].concat(Object.keys(t.viewmodel.data),Object.keys(t.viewmodel.mappings),Object.keys(t.viewmodel.computations)):(i=t.viewmodel.wrapped[n.str],r=i?i.get():t.viewmodel.get(n),o=r?Object.keys(r):null),o&&o.forEach(function(t){"_ractive"===t&&s(r)||e.push(n.join(t))}),e

任何想法都将不胜感激!

更新

我发现此问题仅在Ractive 0.7.3中,行为按预期在< 0.7.3和Ractive 0.8.5中,如上所述将对象推入Ractive并不会更新模型。

1 个答案:

答案 0 :(得分:0)

我无法在任何地方找到答案,因为似乎没有人遇到这个问题。升级到RactiveJS 0.8.5似乎已经解决了这个问题,虽然必须做更多工作才能让其他东西再次运行......

似乎0.7.3到0.8.5已完成一些重大更改,可在此处找到docs.ractivejs.org/0.8/migrating