gpt4 book ai didi

Electron 'window' 未定义

转载 作者:行者123 更新时间:2023-12-04 15:40:56 42 4
gpt4 key购买 nike

我正在尝试构建一个使用 Google Charts api 绘制折线图的应用程序。
我已经设置的一件事是窗口上的“调整大小”事件的事件监听器。这会触发折线图重新绘制尺寸设置为“window.innerWidth”和“window.innerHeight”以适应新窗口大小。

如果我使用 npm start 运行应用程序,这一切都很好。问题是当我使用 Electron 打包器构建应用程序时。运行它构建的 exe 会抛出这个:enter image description here

这是我的 HTML:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>AP Test Viewer</title>
<link rel="stylesheet" href="css/styles.css">

</head>
<body ng-app="ApApp" ng-controller="MainController">

<a ui-sref="single">Single</a>
<a ui-sref="multi">Multi</a>

<ui-view></ui-view>


</body>

<script>
// You can also require other files to run in this process
require('./renderer.js');
require('./js/loader.js'); //google charts loader.js
require('./js/app.js');
</script>
</html>

和我的应用程序的相关部分,我在这里使用窗口:
app.fun.drawGraph = function(){
if(app.data.graphConfig){
app.data.graphConfig.options.width = window.innerWidth * 0.97;
app.data.graphConfig.options.height = window.innerHeight * 0.90;

var chart = new google.visualization.LineChart(document.getElementById('chart'));
chart.draw(app.data.graphConfig.data, app.data.graphConfig.options);
// chart.draw($scope.graphData, google.charts.Line.convertOptions(options));
}
}

window.addEventListener('resize', function(e){
if(app.data.graphConfig){
app.fun.drawGraph();
}
})

据我所知,这应该只是“窗口”,可以通过网页上的 javascript 访问。

最佳答案

看起来您引用的相关 Javascript 正在主进程中运行,而不是在渲染器进程中运行。如果您移动引用 window 的代码进入 html 中的脚本标记,您不应该看到相同的问题。

至于需要来自 html 页面的文件,我希望它也能像在脚本标签中一样工作。不过我可能会弄错。

关于 Electron 'window' 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40476315/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com