如何在节点 webkit 中从 package.json 覆盖 window 高度和宽度

How to overwrite window height and width from package.json in node webkit

来自 package.json 的代码:

{
    "main": "main.html",

    "name": "Test App",
    "window": {
        "toolbar": true,
        "width": 400,
        "height": 500,
        "position": "mouse",
        "resizable": true
    }
}

main.html 我有 javascript 打开新的代码 window:

 window.open("http://www.example.com","mywindow", "location=1,status=1,scrollbars=1,width=100,height=100");

但是window的高度和宽度不在width=100height=100

我也在 main.html 中尝试过 window.resize(100,100),但没有成功。 有什么方法可以覆盖新 window 的 heightwidth

Windows 使用 window.open() 打开使用清单文件 (package.json) 中的 window 设置。

如果你使用nw.jsWindow对象创建window,而不是DOM对象,你可以在window中传入设置清单格式以覆盖默认值。

var gui = require("nw.gui")
gui.Window.open('http://www.example.com', {  
    width: 100,
    height: 100,
}); 

或者,如果您必须使用 DOM window.open 并且需要控制默认值,您将需要处理 "new-win-policy" 事件并使用 window 设置setNewWindowManifest:

// set up handler for new-win-policy event
var gui = require('nw.gui');
var win = gui.Window.get();

win.on('new-win-policy', function (frame, url, policy) {
    policy.setNewWindowManifest({
        width: 600, 
        height: 300
    });
});

// open window using DOM object, uses arguments set in event handler
window.open('http://www.example.com', '_blank', '');

此处提供更多文档:https://github.com/nwjs/nw.js/wiki/Window#new-win-policy