我正在尝试将jquery功能添加到用电子编写的桌面应用程序中
使用电子快速启动repo我将下载的jquery文件添加到main.html
文件中,如下所示:
<script> require("./jquery.min.js"); </script>
左右:
<script>window.$ = window.jQuery = require('./jquery.min.js');</script>
然后在index.js
文件中我在createWindow
函数中添加代码,因为这似乎是正确的位置,但说实话,我尝试的任何地方或多或少都会得到同样的错误。
mainWindow.$
为undefined
,同样适用于BrowserWindow
和app
mainWindow
在createWindow
函数中定义如下:
mainWindow = new BrowserWindow({width: 800, height: 600})
和BrowserWindow在文件的顶部声明如下:
const BrowserWindow = electron.BrowserWindow
知道我哪里出错了,我应该更改/添加哪些声明?
提前致谢
答案 0 :(得分:16)
在使用电子时,还会在DOM中插入一些其他符号,从而导致出现问题。因此,您可以使用jquery,如下所示
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js" onload="window.$ = window.jQuery = module.exports;"></script>
注意“onload”中的代码。
答案 1 :(得分:8)
当你在require
或主要进程内拨打index.js
时,它正在寻找节点模块。所以你需要通过npm安装jQuery
并将其保存为你的apps package.json文件中的依赖项。
npm install jquery --save
然后你的index.js
理论上应该使用
let $ = require('jquery');
mainWindow.$ = $;
请参阅Node.JS section for installing jQuery。这就是电子使用的。
-
OLD ANSWER
在main.html
内,只需包含JavaScript,就像传统的JS文件一样。
<script src="./jquery.min.js"></script>
答案 2 :(得分:0)
要将jQuery
集成到您的 Electron应用程序中,请按照以下简单步骤操作
步骤1:在终端中运行
npm install jquery --save
步骤2:将此行添加到您的angular.json
或angular-cli.json
文件中
"build": {
"options": {
"styles": [
"node_modules/bootstrap/dist/css/bootstrap.min.css",
"src/styles.css"
],
"scripts": [
"node_modules/jquery/dist/jquery.js", //add this line
"node_modules/bootstrap/dist/js/bootstrap.min.js"
],
...
...
}
}
第3步:最后将这一行添加到您的index.html
文件中
<!-- Need this for jQuery electron -->
<!-- Insert this line above script imports -->
<script>if (typeof module === 'object') {
window.module = module;
module = undefined;
}</script>
<!-- Insert this line after script imports -->
<script>if (window.module) module = window.module;</script>
</head>
您也可以使用此template