在express.js中包含客户端js
我已经用一个express生成器构建了一个新的应用程序,所以我已经为客户端准备了带有javascripts的public dir。但我无法访问这些文件。 我的app.js有一个绝对路径在express.js中包含客户端js,express,Express,我已经用一个express生成器构建了一个新的应用程序,所以我已经为客户端准备了带有javascripts的public dir。但我无法访问这些文件。 我的app.js有一个绝对路径 app.use(express.static(path.join(__dirname, 'public'))); 但是当我像这样把index.html页面放在身体底部时 <script type="text/javascript" src="/javascripts/main.js"> 我
app.use(express.static(path.join(__dirname, 'public')));
但是当我像这样把index.html页面放在身体底部时
<script type="text/javascript" src="/javascripts/main.js">
我在一个控制台中发现了一个关于这个脚本的404错误 我正在开发类似的东西。我的javascript文件在公用文件夹的js文件夹中。这是我的javascript链接,我没有收到任何错误:
<script src="js/options.js"></script>
我认为您需要删除“src”标记中的公共斜杠或正确关闭“script”您需要安装手写笔和nib npm模块
var express = require('express')
, stylus = require('stylus')
, nib = require('nib')
function compile(str, path) {
return stylus(str)
.set('filename', path)
.use(nib())
}
app.use(stylus.middleware(
{ src: __dirname + '/public'
, compile: compile
}
))
app.use(express.static(__dirname + '/public'))
还有
public/javascripts/main.js
是否存在?是的。这是所有目录创建的express generatorI创建了一个带有express generator的项目,它对我来说很好。您是否更改了创建的应用程序中可能导致路由中断的任何部分?另外,我假设您正在从正在运行的服务器(而不是直接通过文件系统)请求index.html
。这对我不起作用。应该知道他们为什么要为所有这些创建公共目录