我正在使用nodejs + jade开发一个Web应用程序。
我想在jade页面中包含一个js文件。但它不像我认为的那样有效。
我包含三个js文件:
script(src='//cdn.bootcss.com/jquery/1.11.3/jquery.min.js')
script(src='//cdn.bootcss.com/bootstrap/3.3.5/js/bootstrap.min.js')
script(src="async.js")
前两个工作正常(引导程序文件)。但浏览器将在第三个“GET http://127.0.0.1:3000/sample/auth/async.js 404(未找到)”声明。似乎有些东西会将src更改为基于url的网址“http://127.0.0.1:3000/sample/auth/”
“127.0.0.1”是localhost,端口“3000”是服务器正在侦听的端口,“http://127.0.0.1:3000/sample”是我的Web应用程序的入口。
所以我猜项目中有一个配置强制src成为这样的url。我不知道如何包含本地js文件。有人可以帮忙吗?谢谢!
答案 0 :(得分:1)
您应该在async.js
中将/public/scripts
放入Express应用中。您可能需要创建此目录,但您会看到应用程序的本地CSS文件位于/public/stylesheets
。
执行此操作后,请参考async.js
这样的script(src='/scripts/async.js')
文件。
这是提供本地CSS和JavaScript的首选方法。您可以在app.js
中看到Express在那里查找任何静态资源。
app.use(express.static(path.join(__dirname, 'public')));