如何在 NW.js 中将 .js 文件设置为主文件?

How to set .js file as main in NW.js?

我关注了NW.js' offical doc,但是window从来没有出现过。
如果我将 package.json 切换为 "main": "index.html",则会出现 window。但是如果我return到"main": "main.js",window不会出现。

这是我的 main.js:

var nw = require('nwjs');

nw.Window.open("index.html", {}, function(win) {});

我必须设置 "main": "main.js" 因为我想使用的模块不支持 .html 文件 "main".
有人有解决办法吗?

我很好奇哪个模块需要您的 main 是一个 JS 文件。很少有 NW.js 项目不使用 html 文件作为 main(我强烈建议使用 "main": "index.html")。

你的问题是 var nw = require('nwjs'); 等同于做 nw = undefinedwindow.nwglobal.nw 在默认上下文中都已经可以随时访问。你基本上是在删除你需要的东西。

index.html

<!DOCTYPE html>
<html>
  <head>
    <title>TEST</title>
  </head>
  <body>
    <h1>Test<h1>
  </body>
</html>

index.js

nw.Window.open('index.html');

package.json

{
  "name": "test",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "start": "nw ."
  },
  "devDependencies": {
    "nw": "0.51.0-sdk"
  },
  "author": "Julien",
  "description": "Test",
  "license": "MIT"
}

然后npm install && npm start。不过还是那句话,你不要这个,你要"main": "index.html",就是省事多了