【问题标题】:Javascript references from EJS file not working on Webstorm来自 EJS 文件的 Javascript 引用在 Webstorm 上不起作用
【发布时间】:2013-12-10 04:17:04
【问题描述】:

我正在 Webstorm 中开发一个 Node.JS 项目,其中有一个主 EJS 文件,其中包含一些应该调用另一个 javascript 文件中的函数的 javascript。当 HTML 呈现时,不会对另一个 javascript 文件中的函数进行调用。我知道对 javascript 文件的路径引用是正确的,因为如果我在导航栏中移动文件,webstorm 会自动更改它。

这是主 EJS 文件中的调用代码。

<script src = "../public/javascripts/DivManipulations.js">
</script>
<script>

    $(document).ready(function () {
        $("button").click(function () {
            remoteScriptTest("Hi");
        });
    });

</script>

这是被调用函数中的代码。

function remoteScriptTest(message){
    window.alert(message);
}

我知道这可能不足以解决问题,所以请寻求任何可能有帮助的信息。

【问题讨论】:

  • 控制台说:“未捕获的参考错误:remoteSriptTest 未定义”。我不明白我还需要做什么才能让它工作。
  • 包含函数。如何检查其“已加载”?
  • 这里有一个有趣的观察:请求 javascript 文件会从服务器返回调用 html 文件 - 顺便说一下,它是用 ejs 编写的。这就是为什么没有定义函数的原因。任何线索为什么会发生这种情况?这是一个使用 webstorm 开发的 nodejs 服务器
  • 不确定您的应用程序是什么样子的。它是一个快速应用程序,其客户端文件位于公共文件夹中,服务类似于“app.use(express.static(__dirname + '/public'))'?您需要将您的 URL 设置为相对于“公共”文件夹 - 所以尝试将 EJS 中的 URL 更改为
  • 是的,它的快递!我没有明确指定静态文件夹,但使其相对于“公共”文件夹也不起作用。默认文件夹是什么?

标签: javascript jquery node.js webstorm


【解决方案1】:

尝试从包含路径中删除 public.. 我遇到了同样的问题。

<script src = "/javascripts/DivManipulations.js">

【讨论】:

    猜你喜欢
    • 2021-08-05
    • 1970-01-01
    • 2022-01-14
    • 1970-01-01
    • 2019-04-15
    • 2016-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多