我知道这已经被问了很多,但是经过了几天的研究,我仍然遇到了同样的错误。我似乎无法找到完美的解决方案。
所以我有一个button
,我试图通过位于{{1}的外部文件(JS
)上的scorecards.js
功能提供支持} ..
js folder
但是当我点击按钮
时,我仍然会收到此错误<a id="generateScorecardBtn" class="btn orange lighten-1 btn-large" onclick="generateScorecard(document.getElementById('uploadAppPerfLog').value, document.getElementById('uploadDbPerfLog').value);">
即使我在HTML Uncaught ReferenceError: generateScorecard is not defined
<head>
请帮我调查一下。我还使用<script src="js/scorecards.js" type="text/javascript"></script>
命令提示符编译应用程序。
非常感谢!
链接至node.js
:https://drive.google.com/open?id=0BzZ5wr0I2306VGJzTUZTMDY4eHc
答案 0 :(得分:0)
此功能:
onclick="generateScorecard(...);"
应该在全局范围(窗口)中,因为您直接引用它。如果错误显示未捕获的ReferenceError:未定义generateScorecard 这意味着它在全局范围内不可用,因为您猜测它是。
您需要检查函数是否已放在名称空间中,如:
var $$global = $$global || {};
$$global.generateScorecard = function(a, b){};
如果是这种情况,则该功能将作为
提供onclick="$$global.generateScorecard(...);"
答案 1 :(得分:0)
我的第一个猜测(错误,见下文)是没有加载js文件,因为&#34; js /&#34;不在当前目录中。检查您是否有正确的相对路径。
但是,无论哪种方式,因为这是一个Electron应用程序,您应该打开chrome dev工具,并查看您获得的控制台错误,或查看“网络”选项卡以查看它是否正在加载。
查看toggleDevTools以便在启动时显示chrome dev工具,或在按键时显示。
P.S。我做到了,你的代码有语法错误!即路径是正确的,但文件内容无效,这就是单击按钮时不存在的原因。
在processDataToDictionary()
中你错过了&#34; /&#34;在正则表达式结束时。
csv.split(/\r\n|\n);