我試圖訪問包含幾個.js控制器模塊的應用程序中的文件夾。Node.js Express - 指定應用程序根目錄的路徑
在我的.html文件之一的頭我有這樣的腳本聲明:
的應用程序正在運行,應用程序似乎知道當前的路徑是什麼時候的問題是,所以我的腳本路徑與實際的文件系統無關,它與應用程序的當前路徑有關,我可能會說這是非常奇怪的。
因此,快速解決方法是輕鬆指定我的應用程序的根目錄,因爲fancy_scripts只是從根目錄下的一個文件夾。
以下是不行的,因爲我上面
<head>
<script type="text/javascript" src="../fancy_scripts/userHomeController.js"></script>
</head>
提到的問題,但必須有與類似雙斜線「//」指定應用程序的全局根的方式
<head>
<script type="text/javascript" src="//fancy_scripts/userHomeController.js"></script>
</head>
(以上也不管用,//在微軟Windows(我認爲)的根,但不是一個快速的應用程序),這是一個簡單的問題,與我希望一個簡單的解決方案。然而,可能有更好的方式來做事情。
我有這3行代碼已經:
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.static(__dirname + '/fancy_scripts'));
app.use('/fancy_scripts', express.static(__dirname + '/fancy_scripts'));
感謝蒂莫西 - 我加了一些信息,以問題的底部。我已經有一些代碼處理這個了。 – 2014-11-22 05:42:33
這個fancy_scripts目錄在哪裏?它應該提供與您的應用程序入口點相關的文件,而不是您的操作系統根目錄。你也不應該像這樣定義多個靜態路徑。只需定義一個。請記住,您在靜態函數中指定的文件夾名稱不包含在客戶端的路徑中。 – 2014-11-22 06:43:17
好的,謝謝,我用Windows作爲例子,你可以用「//」來定義根目錄。 – 2014-11-22 07:13:11