【发布时间】:2012-07-13 22:55:50
【问题描述】:
这让我发疯了。
我有一个带有 express 的节点应用程序。它提供一个名为 index.ejs 的文件。
我想做的就是在这个页面上导入一个 javascript 文件(类似于 jquery)。但它不会把它拉起来,我要疯了(因为这应该很简单)。
在服务器端,我将这段代码放在一个名为 app.js 的文件中:
var express = require('express');
var app = express.createServer();
var hostName = (process.env.VCAP_APP_HOST || 'localhost');
app.listen( process.env.VCAP_APP_PORT || 8000);
app.use(express.static(__dirname + '/public/javascript/'));
//Create the view
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.set('view options', { layout: false });
app.get('/', function(req, res){
res.render('index.ejs', {
item : "document.write('Hello World');"
});
});
在 ejs 文件中,我有这个:
<html>
<script>
<%= item %>
</script>
<a href="">Link</a>
<script type="text/javascript" src="/javascript/jquery.js"></script>
</html>
我可以在控制台中看到脚本未加载(它显示错误)。但是对于我的一生,我无法弄清楚为什么。
【问题讨论】:
-
它显示什么错误?如果您查看源代码,HTML 会是什么样子?
-
GET localhost:8000/javascript/jquery.js 404(未找到),查看源代码几乎可以显示您的期望。它显示了我的脚本 div 和很多。
-
我才意识到我搞砸了标题。 Gahh,现在已经太晚了。
-
我认为这是因为客户端没有获取该 javascript 页面,这就是它出现 404 的原因。但我以前曾以这种方式引用过脚本。为什么现在会生气?
标签: javascript jquery node.js ejs