我正在使用带有express web框架和jade模板解析器的node.js。
我正在遵循 Bootstrap 示例,但在holder.js方面遇到问题。
我已将holder.js脚本放入静态文件(公共(public)目录)中,在app.js中具有以下内容:
app.use(express.static(path.join(__dirname, 'public')));
我想在jade模板中使用以下代码显示一些图像:
img(data-src='/holder.js/500x500/auto')
而且它不起作用。我通过浏览器进行了检查,我能够正确地看到holder.js 文件,但是添加任何参数都会导致显示主页。
我怀疑静态文件处理程序认为不存在诸如holder/500x500/auto这样的文件并重定向到主页。我该如何解决这个问题?
最佳答案
这是一个带有 Express 和 Jade 的 Runnable,带有几个 Holder 占位符:http://runnable.com/U6IlNqsTu-cR6ZT8/holder-js-in-express-using-jade-for-node-js-and-hello-world
这两个占位符使用不同的主题,其中一个使用 auto
标志。
server.js
:
var express = require('express')
var app = express();
app.set('view engine', 'jade')
app.get('/', function(req, res){
res.render('index')
})
var server = app.listen(80, function(){})
views/index.jade
:
doctype html
html
body
script(src='//cdnjs.cloudflare.com/ajax/libs/holder/2.3.1/holder.min.js')
img(data-src='holder.js/200x200/lava/auto')
img(data-src='holder.js/200x200/sky')
关于node.js - 在 Node.js 上使用holder.js 和 Express Web 框架确实有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24272808/