RxJS - 您的平台不支持Array.observe

时间:2016-05-16 12:51:13

标签: javascript rxjs

我正在尝试用RxJS做一个基本的例子,但是我收到的错误是:

  

rx.all.js:2880 Uncaught TypeError:您的平台不支持Array.observe

这是我现在的代码:

<!DOCTYPE html>
<html>
<head>


<script src="node_modules/rx/dist/rx.all.js"></script>

<script>
    var array = [];

    var observable = new Rx.Observable.ofArrayChanges(array);

    observable.subscribe((res) => {
        console.log(res.object[res.index]);
    });

    setInterval(() => {
        array.push(Math.random());
    }, 1000);
</script>


</head>
<body>
</body>
</html>

你能想出发生这种情况的原因吗?

1 个答案:

答案 0 :(得分:2)

Array.observe只是public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable { if (!lpparam.packageName.equals("com.esealed.dalily")) return; findAndHookMethod("com.esealed.dalily.i.c",lpparam.classLoader ,"a","com.esealed.dalily.model.VersionInfo", new XC_MethodHook() { @Override protected void beforeHookedMethod(MethodHookParam param) throws Throwable { Log.d("XPOSED_MOD","Inside a method "); param.setResult(null); } }); 功能的一个薄薄的包装,这是一项实验性技术提案,后来被拒绝,将来很可能被删除。

请参阅:http://caniuse.com/#feat=object-observe

正如你所看到的,只有3个版本的chrome和1个opera真的存在功能,所以如果你的应用程序将在那之外使用(可能是一个安全的假设),那么你可能需要改变你的方法。