Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将变量传递给父窗口_Javascript_Angularjs - Fatal编程技术网

Javascript 将变量传递给父窗口

Javascript 将变量传递给父窗口,javascript,angularjs,Javascript,Angularjs,在父窗口中,我正在监视变量window.test中的更改 $rootScope.$watch(function() { return window.test; }, function() { console.log(window.test) }); 在某个单击事件中,我打开新窗口,并在此窗口中更改父窗口的window.test值 window.top.opener.test = 123; 当我关闭子窗口时,我可以看到,父窗口中的window.test已经更新。这工作得很好,但

在父窗口中,我正在监视变量window.test中的更改

$rootScope.$watch(function() {
    return window.test;
}, function() {
    console.log(window.test)
});
在某个单击事件中,我打开新窗口,并在此窗口中更改父窗口的window.test值

window.top.opener.test = 123;

当我关闭子窗口时,我可以看到,父窗口中的window.test已经更新。这工作得很好,但若在关闭子窗口之前刷新父窗口,它将不再工作。如何处理此问题?

好的,我刚刚发现,如果您在.test更改后刷新父窗口,它将无法工作。如果您以前刷新过,一切正常


所以我的解决方案是,改变。在你用“下载”按钮或其他什么关闭子窗口之前进行测试。

Clem如果你关闭父窗口,那么就没有子窗口的空间。你当然是对的,但我相信我从来没有说过任何关于关闭父窗口的内容,而是关于刷新窗口的内容。你得到了答案,这很好。干杯