jquery 在 node-webkit 上运行不佳

jquery not working well on node-webkit

我正在练习 node-webkit 作为 nodejs 初学者。
我的主页是一个简单的 html 页面,包括一个 main.js 脚本

我使用 npm install jquery

安装了 jquery

index.html

<!-- index.html -->
...
<script src="js/main.js"></script>
</head>
<body>
<div id="demo">Hi! </div>
</body>
</html>

main.js

// main.js
const $ = require('jquery')

$(document).ready(function () {
  $('#demo').click(function () {
    $(this).text($(this).text() + 'Hi! ')
  })
})

如果我在我的 index.html 中加载 jquery 就像 <script src="path/to/jquery.js"></script> 它工作得很好,但是如果我在我的 main.js 中需要 jquery 它就不行!

我已经测试过:

我也意识到 $(document).ready(...) 有效!但真正的问题是 $('#demo') 是未定义的! (我检查了控制台-我使用的是 node-webkit 的 SDK 版本)

我不知道是因为 node-webkit 还是我缺少的其他东西?

找到解决方案, 我应该这样定义 jquery:

window.$ = window.jQuery = require('jquery')

这仅仅是因为 ECMAS

中的变量作用域

所以如果我这样定义它,我就可以在任何地方使用它