如何在 NWJS 的弹出窗口 window 上调用 Window.print()?
How to call Window.print() on a popup window in NWJS?
在 NWJS 中,我想打开一个带有本地文件 URL 的弹出窗口 window 到 PDF,然后立即打印 PDF(在 Windows 上)。我试过这样做:
nw.Window.open(
'file://' + downloadItem.filename.replace(/\/g, '/'),
{new_instance: true, height: 600, width: 800},
function(pdfWin) {
pdfWin.on('loaded', function() {
this.print({autoprint: false});
});
}
);
但是在开发者工具中,它说 pdfWin
是未定义的,考虑到它应该工作 according to the documentation. I then tried using Window.open
with nw.Window.get(),这对我来说是完全奇怪的,然后我得到一个错误说 Blocked a frame with origin "chrome-extension://..." from accessing a cross-origin frame.
有什么想法吗?
好的,我找到问题了。如果你取出 new_instance: true
,上面的代码就可以工作。如果该变量被标记为 true
,那么 this
最初是 undefined
,并且代码不起作用。
在 NWJS 中,我想打开一个带有本地文件 URL 的弹出窗口 window 到 PDF,然后立即打印 PDF(在 Windows 上)。我试过这样做:
nw.Window.open(
'file://' + downloadItem.filename.replace(/\/g, '/'),
{new_instance: true, height: 600, width: 800},
function(pdfWin) {
pdfWin.on('loaded', function() {
this.print({autoprint: false});
});
}
);
但是在开发者工具中,它说 pdfWin
是未定义的,考虑到它应该工作 according to the documentation. I then tried using Window.open
with nw.Window.get(),这对我来说是完全奇怪的,然后我得到一个错误说 Blocked a frame with origin "chrome-extension://..." from accessing a cross-origin frame.
有什么想法吗?
好的,我找到问题了。如果你取出 new_instance: true
,上面的代码就可以工作。如果该变量被标记为 true
,那么 this
最初是 undefined
,并且代码不起作用。