簡體   English   中英

無法弄清楚如何到達js文件

[英]Cannot figure out how to reach to a js file

我是Web開發的新手,正在嘗試Express的node.js。

我有以下目錄結構:

第一個應用
---- node_modules
---- 公眾
-------- 腳本
------------ additems.js
---- 意見
-------- home.ejs
---- app.js

帶有粗體的為文件夾,斜體為文件。

這是文件additem.js:

console.log("js connected");
alert("test");

這是home.ejs文件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Test Node</title>
</head>

<body>

<h1>Dynamic Page</h1>
<p></p>

<ol id='olist'>Names List</ol>

<script type="text/javascript" src="../public/scripts/additems.js"></script>
<!-- <script type="text/javascript" src="/public/scripts/additems.js"></script>
<script type="text/javascript" src="/scripts/additems.js"></script>
<script type="text/javascript" src="/additems.js"></script>
<script type="text/javascript" src="additems.js"></script>
<script type="text/javascript" src="public/scripts/additems.js"></script> -->

<p>After Script tag</p>

</body>
</html>

這是app.js文件:

var express = require('express');
var app = express();

console.log("Server has been started!");

//app.use(express.static(__dirname + "/public"));

app.get("/", function(req,res){
    //res.send("Home Page");
     res.render("home.ejs");

 })

我可以看到服務器可以運行並且顯示了home.ejs,但是沒有跡象表明additem.js甚至可以被觸摸。

我錯過了什么?

注意:我嘗試了不同的腳本路徑,並在app.js中嘗試了app.use並沒有碰到運氣,我還花費了大量時間搜索網絡,並且發現了類似的示例似乎沒有問題。

輸出:

控制台:服務器已啟動!

瀏覽器:( 不顯示警報

在此處輸入圖片說明

更新1 :我嘗試了../但也無法正常工作。 在chrome控制台中,我可以看到此錯誤: (X) Failed to load resource: the server responded with a status of 404 (Not Found)但是在添加..\\ ,錯誤是: (X) GET http://localhost:3000/public/scripts/additems.js net::ERR_ABORTED

從公共目錄提供靜態文件:

app.use(express.static(__dirname + "public"));

然后,當從瀏覽器訪問這些文件時, public將成為根目錄。

換句話說,public將是/

所以要訪問additems.js

<script type="text/javascript" src='/scripts/additems.js'></script>

暫無
暫無

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

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