簡體   English   中英

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

[英]Why doesn't my script file work in index.ejs?

當我加載頁面時,

怎么了

出現了,但 script.js 中的“Hello World”沒有出現。 有什么幫助嗎?

目錄看起來像這樣

project | +-- node modules | +-- javascript | | | +-- script.js | +-- views | | | | +-- index.ejs | +-- server.js | +-- package.json

index.ejs 文件

<html lang="en"> <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 中則不然

server.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)

如果您將src -attribute 更改為絕對路徑,這應該可以正常工作:

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

請注意,我已從 url 中刪除了/javascript子文件夾,因為這不正確。 您還應該將子文件夾傳遞給express.static ,即:

app.use(express.static('javascript'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM