【发布时间】:2017-01-07 07:41:12
【问题描述】:
我是 node.js 和后端编程的新手。我无法从 express 加载静态文件。我没有使用“公共”目录。我需要'js'文件夹中的js文件。 这是文件夹结构 folder structure:
在 index.js 中
我已经提过:app.use('/js',express.static(__dirname + '/js'));
index.html:
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/bootstrap.js"></script>
<script type="text/javascript" src="js/sngulsr.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.1.3/ui-bootstrap.min.js"></script>
<script type="text/javascript" src="js/angular-routing.js"></script>
<script type="text/javascript" src="js/angular-main.js"></script>
<script type="text/javascript" src="js/controllers.js"></script>
<script type="text/javascript" src="js/custom.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.10.0/ui-bootstrap-tpls.js"></script>
(这些是未加载的文件)
所以,当我运行文件时,我得到 $ 未定义的错误,因为 jquery 没有被加载。
编辑: 从 app.use 中删除 __dirname 后 imageEDITED_IMG
【问题讨论】:
-
应该只是
app.use(express.static('/'));你设置它的方式,但是你已经向客户端打开了你的整个代码库,这就是我们使用/public文件夹的原因那个。 -
Windows 还是 Linux?如果从
app.use中删除__dirname会发生什么?在运行 Web 应用程序的控制台中出现任何错误? -
谢谢!但是文件似乎仍然没有加载...
-
视窗。从 app.use 中删除 __dirname 后,在此控制台中出现此错误。我已经编辑了我的问题,添加了新错误的 img。
-
在 Windows 中
_dirname包含反斜杠,并且您正在混合正斜杠/反斜杠。尝试使用相对路径:将“/js”更改为“./js”。这是您的应用程序中唯一的app.use()吗?也许发布更多你的代码......
标签: javascript html angularjs node.js express