为什么我的脚本文件在 index.ejs 中不起作用?

当我加载页面时,


怎么了

出现了,但是 script.js 中的“Hello World”没有出现。有什么帮助吗?

该目录看起来像这样


project

 |

 +-- node modules

 |    

 +-- javascript

 |  |  

 |  +-- script.js

 |    

 +-- views

 |  |  

 |  |  +-- index.ejs

 |    

 +-- server.js

 |

 +-- package.json

index.ejs 文件


<html>

<head>

  <meta charset="utf-8">


  <title>Index</title>

  <meta name="description" content="Index">


</head>


<body>

  

  <h1>What is up?</h1>


  <div id = "container">

    

  </div>


</body>


<script src = "javascript/script.js">

    

// var container = document.getElementById("container");

// var content = document.createTextNode("Hello, World!");

// container.appendChild(content);


</script>

</html>

脚本中注释掉的代码正是 script.js 文件中包含的内容。如果我取消注释,并让代码在 ejs 文件中运行,它就可以工作。如果在外部 script.js 中就不行


服务器.js 文件


const express = require('express')

const app = express()


app.set('view-engine', 'ejs')


app.use(express.static('project/javascript'))


app.get('/', (req, res) => {

    res.render('index.ejs')

})


app.listen(3000)


米脂
浏览 118回答 1
1回答

狐的传说

如果将src-attribute 更改为绝对路径,这应该可以正常工作:<script&nbsp;src="/script.js"></script>请注意,我已经/javascript从 url 中删除了子文件夹,因为这是不正确的。您还应该将子文件夹传递给express.static,即:app.use(express.static('javascript'));
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript