我遇到错误:
“未捕获的ReferenceError:未定义$”
当尝试在电子应用程序的自定义js代码中使用$('#someid')
时。
脚本在我的html文件中的顺序正确:
<script type="text/javascript" src="assets/js/jquery.min.js"></script>
<script type="text/javascript" src="assets/js/popper.js"></script>
<script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="mymidi.js"></script>
如果我尝试在mymidi.js
的第一行中使用,就会发生这种情况:
console.log($('#mappingnotify').innerText);
,或者对于稍后在创建dom元素期间创建的事件:
function pickdev(){...
midiinput.on('noteon',function(msg){
...
$('#mappingnotify').modal('show');
...})}
奇怪的是,它似乎可以从控制台正常工作:
console.log($('#mappingnotify').innerText);
输出:
VM113:1
kalsjhdf
Cancel
对我来说,似乎与$
调用时未加载有关系...但是我对如何解决它感到困惑。
答案 0 :(得分:-2)
这不是在读取您的jQuery文件。
您设置了静态文件夹吗?我从未使用过Electron,但是在Node.js中,您可以设置一个静态文件夹,并且服务器会知道何时开始建立关系。
因此,也许在根应用程序文件夹中创建一个名为“ public”的子文件夹,将所有“ assets”,“ bootstrap”等移动到public文件夹中。然后在主文件中添加const pathToAsset = path.join(__static, 'public')